diff --git a/bin/steps/collectstatic b/bin/steps/collectstatic
index 60ef95dd849e562701bb92cc1a67781c4652dd10..12f05db15626d9e7dc5655bf2b76926d6301f4f6 100755
--- a/bin/steps/collectstatic
+++ b/bin/steps/collectstatic
@@ -27,7 +27,7 @@ bpwatch start collectstatic  # metrics collection
 if [ ! "$DISABLE_COLLECTSTATIC" ] && [ -f "$MANAGE_FILE" ] && [ "$DJANGO_INSTALLED" ]; then
     set +e
 
-    echo "-----> $ python $MANAGE_FILE collectstatic --noinput"
+    puts-cmd "python $MANAGE_FILE collectstatic --noinput"
 
     # Run collectstatic, cleanup some of the noisy output.
     python $MANAGE_FILE collectstatic --noinput --traceback 2>&1 | sed '/^Post-processed/d;/^Copying/d;/^$/d' | indent
diff --git a/bin/steps/pip-install b/bin/steps/pip-install
index 7c0725fd9cbc37b7e452e0288adf7357944a3ec7..8f0b61efc47a4191e70b38dcdaf64ae20e5697aa 100755
--- a/bin/steps/pip-install
+++ b/bin/steps/pip-install
@@ -1,5 +1,5 @@
 # Install dependencies with Pip.
-puts-step "Installing dependencies with pip"
+puts-cmd "pip install -r requirements.txt"
 
 [ ! "$FRESH_PYTHON" ] && bpwatch start pip_install
 [ "$FRESH_PYTHON" ] && bpwatch start pip_install_first
diff --git a/bin/utils b/bin/utils
index ff93b53c1b15d229481fd5fe585b4569edc9b557..569fff9a99b3391261f23b942c2ab05a46e3168e 100755
--- a/bin/utils
+++ b/bin/utils
@@ -26,6 +26,11 @@ cleanup() {
   sed -e 's/\.\.\.\+/.../g' | sed -e '/already satisfied/Id' | sed -e '/Overwriting/Id' | sed -e '/python executable/Id' | sed -e '/no previously-included files/Id'
 }
 
+# Buildpack Indented line.
+puts-line() {
+  echo "       $@"
+}
+
 # Buildpack Steps.
 puts-step() {
   echo "-----> $@"
@@ -36,6 +41,11 @@ puts-warn() {
   echo " !     $@"
 }
 
+# Buildpack Commands.
+puts-cmd() {
+  echo "     $ $@"
+}
+
 # Usage: $ set-env key value
 set-env() {
   echo "export $1=$2" >> $PROFILE_PATH