Lead board (Kanban)
Drag-and-drop your pipeline — move leads between stages and watch the value in each column.
Lead board (Kanban)
The Board is your pipeline as columns. Each column is a stage, each card is a lead, and dragging a card moves it — the same update as changing the stage on the Lead 360 view, just faster to do in bulk.
Who this is for
-
Sales agents — work one stage at a time: move yesterday's "contacted" leads to "qualified" as you talk to them.
-
Managers — see at a glance how many leads and how much money sit in each stage.
-
Difficulty: Easy
-
Time: 5 minutes
-
Prerequisites: At least one pipeline with stages exists (a default pipeline is created for you). See Sales process & stages.
Before you start
- Columns come from a pipeline. Use the pipeline selector in the page header to switch between pipelines (for example Sales vs Support). Each pipeline has its own stages.
- The Unassigned column is special. It collects leads that have no stage yet (
pipeline_stage_idis empty). It is pull-only: you can drag a card out of it into a stage, but you cannot drop a card into it. To pull a lead out, drag it to any stage column.
Steps
1. Open the board
- Go to Leads → Board (
/admin/kanban-board), or click Kanban from the All Leads header.
Expected result: your default pipeline renders as columns in stage order, each column showing its lead count and the total deal value it holds.
2. Move a lead between stages
- Grab a card and drag it onto a column.
Expected result: the card drops into the new column and the lead's stage is saved immediately (the CRM records the moment the stage was entered, which feeds response-time and stuck-deal reports). Column counts and values update.
3. Work a full column
- Drag the cards you have progressed through the day.
Expected result: the board becomes your stand-up view — "these 6 are qualified, these 3 need a quote".
4. See more than fits
- If a column has more than 50 cards, the board shows the first 50 and a +N more link at the bottom.
Expected result: click the link to open the filtered lead list for exactly that stage.
Expected result
Money and leads visibly move from left to right (or through whatever stages you defined) as your team works — without anyone opening a form.
Common mistakes
- Dropping a card into Unassigned fails — by design. Unassigned is a holding area for new, un-staged leads. Drop into a real stage instead.
- Wrong pipeline selected — a lead "missing" from the board usually lives in another pipeline. Switch pipelines with the selector.
- Expecting every lead on the board — each column renders at most 50 cards. Use the +N more link for the rest.
- Using stages as a to-do list — stages should reflect deal reality, not effort. Keep them clean with Sales process & stages.
Troubleshooting
| Symptom | Fix |
|---|---|
| Board is empty | Check the pipeline selector and whether leads have stages (compare with All Leads). New leads appear in Unassigned until moved. |
| Drag does not save | Refresh the page and retry; if it persists, the update request may be failing on your session — sign out and in again. |
| Columns in the wrong order | Stage order is managed in Sales process & stages (drag stages there, not on this board). |
Technical details
- Page:
App\Filament\Pages\KanbanBoard(viewresources/views/filament/pages/kanban-board.blade.php), slug/admin/kanban-board. - Drag-and-drop uses SortableJS; dropping calls
moveCard(leadId, stageId), which setspipeline_stage_idandpipeline_idon the lead.stage_entered_atis stamped byApp\Observers\LeadObserver. - Per-column cap: constant
LEADS_PER_STAGE_CAP = 50. The Unassigned column queries leads withpipeline_stage_id IS NULL. - Stages come from
App\Models\PipelineStageordered bysort_order.
Related guides
- Leads — the list view with full filters and exports.
- Sales process & stages — define pipelines, stages, won/lost rules.
- Lead 360 view — the detail screen behind every card.
- Reports — where leads get stuck, funnel and bottleneck reports.
Was this page helpful?
Thanks — noted. ✦