diff --git a/src/applications/project/controller/PhabricatorProjectBoardViewController.php b/src/applications/project/controller/PhabricatorProjectBoardViewController.php
--- a/src/applications/project/controller/PhabricatorProjectBoardViewController.php
+++ b/src/applications/project/controller/PhabricatorProjectBoardViewController.php
@@ -728,6 +728,11 @@
       ->setIcon('fa-search')
       ->setHref($query_uri);
 
+    $can_bulk_edit = PhabricatorPolicyFilter::hasCapability(
+      $viewer,
+      PhabricatorApplication::getByClass('PhabricatorManiphestApplication'),
+      ManiphestBulkEditCapability::CAPABILITY);
+
     $column_move_uri = urisprintf('bulkmove/%d/column/', $column->getID());
     $column_move_uri = $state->newWorkboardURI($column_move_uri);
 
@@ -735,6 +740,7 @@
       ->setIcon('fa-arrows-h')
       ->setName(pht('Move Tasks to Column...'))
       ->setHref($column_move_uri)
+      ->setDisabled(!$can_bulk_edit)
       ->setWorkflow(true);
 
     $project_move_uri = urisprintf('bulkmove/%d/project/', $column->getID());
@@ -744,16 +750,12 @@
       ->setIcon('fa-arrows')
       ->setName(pht('Move Tasks to Project...'))
       ->setHref($project_move_uri)
+      ->setDisabled(!$can_bulk_edit)
       ->setWorkflow(true);
 
     $bulk_edit_uri = urisprintf('bulk/%d/', $column->getID());
     $bulk_edit_uri = $state->newWorkboardURI($bulk_edit_uri);
 
-    $can_bulk_edit = PhabricatorPolicyFilter::hasCapability(
-      $viewer,
-      PhabricatorApplication::getByClass('PhabricatorManiphestApplication'),
-      ManiphestBulkEditCapability::CAPABILITY);
-
     $column_items[] = id(new PhabricatorActionView())
       ->setIcon('fa-pencil-square-o')
       ->setName(pht('Bulk Edit Tasks...'))
diff --git a/src/applications/project/controller/PhabricatorProjectColumnBulkMoveController.php b/src/applications/project/controller/PhabricatorProjectColumnBulkMoveController.php
--- a/src/applications/project/controller/PhabricatorProjectColumnBulkMoveController.php
+++ b/src/applications/project/controller/PhabricatorProjectColumnBulkMoveController.php
@@ -40,6 +40,20 @@
 
     $move_tasks = array_select_keys($tasks, $move_task_phids);
 
+    $can_bulk_edit = PhabricatorPolicyFilter::hasCapability(
+      $viewer,
+      PhabricatorApplication::getByClass('PhabricatorManiphestApplication'),
+      ManiphestBulkEditCapability::CAPABILITY);
+
+    if (!$can_bulk_edit) {
+      return $this->newDialog()
+        ->setTitle(pht('No Movable Tasks'))
+        ->appendParagraph(
+          pht(
+            'You do not have permission to bulk edit tasks.'))
+        ->addCancelButton($board_uri);
+    }
+
     $move_tasks = id(new PhabricatorPolicyFilter())
       ->setViewer($viewer)
       ->requireCapabilities(array(PhabricatorPolicyCapability::CAN_EDIT))