diff --git a/gitlab/functions.sh b/gitlab/functions.sh
index cc0b5a4985e6c97d46accb995c8274bd9aa6f290..e4a321cbbf1d97a57709a49cdf098063550d6619 100644
--- a/gitlab/functions.sh
+++ b/gitlab/functions.sh
@@ -356,23 +356,27 @@ install_miniconda() {
 # given the current visibility/tagging conditions of the package.
 set_conda_channels() {
   CONDA_CHANNELS=() #resets bash array
-  if [ -z "${2}" ]; then
-    # there are no tags on this build - add beta channels
-    if [ "${1}" == "private" ]; then
-      # adds private beta builds (only if the package is also private)
+  if [ "${1}" == "public" ]; then
+    if [ -z "${2}" ]; then #public beta build
+      CONDA_CHANNELS+=('public/conda/label/beta')
+      CONDA_CHANNELS+=('public/conda')
+    else #public staging (tagged) build
+      CONDA_CHANNELS+=('public/conda/label/staging')
+      CONDA_CHANNELS+=('public/conda')
+    fi
+  else
+    if [ -z "${2}" ]; then #private beta build
       CONDA_CHANNELS+=('private/conda/label/beta')
+      CONDA_CHANNELS+=('public/conda/label/beta')
+      CONDA_CHANNELS+=('private/conda')
+      CONDA_CHANNELS+=('public/conda')
+    else #private staging (tagged) build
+      CONDA_CHANNELS+=('private/conda/label/staging')
+      CONDA_CHANNELS+=('public/conda/label/staging')
+      CONDA_CHANNELS+=('private/conda')
+      CONDA_CHANNELS+=('public/conda')
     fi
-    # adds public stable builds (always)
-    CONDA_CHANNELS+=('public/conda/label/beta')
-  fi
-  if [ "${1}" == "private" ]; then
-    # adds private stable builds (only if the package is also private)
-    CONDA_CHANNELS+=('private/conda/label/stable')
-    CONDA_CHANNELS+=('private/conda')
   fi
-  # adds public stable builds (always)
-  CONDA_CHANNELS+=('public/conda/label/stable')
-  CONDA_CHANNELS+=('public/conda')
   check_array_env CONDA_CHANNELS
 }