Lead assignment & follow-ups
Wizard steps 7–8 — decide who receives each new lead and set up the automatic follow-up that stops leads being forgotten.
Lead assignment & follow-ups
These are wizard steps 7 ("Who should receive new leads?") and 8 ("Make sure no lead is forgotten"). Together they answer two questions an unattended CRM gets wrong every day:
- Who owns a new lead? — so it is never left in a queue nobody checks.
- What reminds us to work it? — so a lead is contacted within the hour, not "eventually".
Who this is for
- Workspace owners and admins during setup.
- Managers fine-tuning routing after the team grows.
Difficulty: Easy · Time: 3–5 minutes · Prerequisites: at least one other team member exists if you choose anything other than Unassigned (invite them in Add team members).
Step 7 — Who should receive new leads?
Pick one of four modes:
| Option | Behaviour | Best for |
|---|---|---|
| Round Robin | New leads are handed out one by one across the selected team members | Teams of 2+ who share lead intake fairly |
| Sales Manager | New leads go to your workspace manager (the first active user with the Manager role) | Small teams where the manager triages |
| Specific Team Member | Every new lead goes to one chosen person | A single-person sales operation |
| Unassigned | Leads arrive in the list without an owner; your team picks them up | Review-first setups — not recommended, leads get missed |
- Select a mode. For Round Robin, tick the team members who should share new leads. For Specific Team Member, choose the person.
- What happens: the rule is saved to workspace settings as
settings.leads.assignment. From then on, every new lead that arrives without an owner is assigned by this rule. - Expected result: the step shows done and the follow-up step opens.
Half the error messages you may see Choosing Sales Manager before a manager exists shows: "No Sales Manager is set up yet — invite one or choose another option." Invite a manager first (Add team members) or pick another mode.
Changing routing later
Routing is not locked to the wizard: Settings → Lead Assignment holds the same rule with modes Off, Specific member and Round robin, and shows who is in the round-robin pool. (Sales Manager from the wizard is stored as "specific member → the manager".)
Manual assignment always wins The rule only fills the gap for leads that arrive without an owner. If a lead is created (or imported) with an assignee already set, the CRM never overrides it.
Step 8 — Make sure no lead is forgotten
The step offers three recommended switches:
| Toggle | What it does |
|---|---|
| Create a follow-up reminder | Creates a real automation: one hour after any new lead arrives, a task — "Follow up with {first_name}" — is created at high priority, assigned for the lead owner |
| Notify the assigned agent | The person who receives the lead is told right away (this is the CRM's standard assignment notification) |
| Send a WhatsApp welcome message | Greets every new lead on WhatsApp — disabled until WhatsApp is connected, since there is no channel to send on before that |
- Leave Create a follow-up reminder on unless you have a reason not to.
- Confirm the step.
- What happens: the CRM checks for an enabled automation on the "new lead" trigger. If none exists, it creates "New Lead Follow-up" for you. If one already exists, nothing is touched.
- Expected result: the step completes once an enabled "new lead" automation exists; the wizard moves on to Add team members.
Follow-up tasks need an owner The create-task action assigns the task to the lead's assignee. If routing is Unassigned, the task is created but belongs to nobody in particular — another reason Unassigned is discouraged.
More control later
- Automations (the step's "See all automations" link) lets you add conditions, delays, WhatsApp steps, stage-triggered rules and more.
- The WhatsApp welcome toggle is only a shortcut; the real behaviour lives in the WhatsApp automation you can see and edit in the Automations area once WhatsApp is connected.
Expected result
- A routing rule that assigns every ownerless new lead (round robin, a specific person, or off).
- An enabled "New Lead Follow-up" automation:
new lead → create task "Follow up with {first_name}" (+1 hour, high priority). - The next wizard step, Add team members, opens.
Common mistakes
- Choosing Unassigned to "decide later". Follow-up tasks then have no natural owner; leads stall.
- Round Robin with one member. Works, but visible-ownership beats a one-person queue — use Specific Team Member instead.
- Manager mode before inviting a manager. The wizard blocks you with a clear error; invite the manager first.
- Disabling the follow-up reminder because "we'll remember". The automation exists because teams do not.
- Expecting the WhatsApp toggle to send immediately. It stays disabled until Connect WhatsApp is done.
Troubleshooting
| Symptom | Likely cause | Fix |
|---|---|---|
| "No Sales Manager is set up yet" | No active user with the Manager role | Invite a manager, or choose another mode |
| "Choose the team member who should receive new leads" | Specific mode without a person | Pick the person from the dropdown |
| Step won't complete | Round-robin pool empty, or specific member missing | Re-select the pool/member and save |
| Assignment didn't apply to an existing lead | The rule only applies to new, ownerless leads | Assign existing leads manually from the lead list |
| Task not appearing after a lead | No enabled "new lead" automation, or lead arrived before setup | Check the New Lead Follow-up automation is enabled; re-send a test lead |
Technical details
- Storage:
settings.leads.assignmenton the tenant —['mode' => 'off'|'specific'|'round_robin', 'user_id' => ?int, 'user_ids' => int[]]. The wizard's manager option resolves tospecificwith the first activemanager-role user's id. - Runtime:
LeadObserver::created()callsLeadAutoAssigner, which reads that setting. Leads created with an assignee, and automation steps with their own assignment config, are left alone. - Follow-up automation:
Automation(triggerlead_created) +AutomationStep(action_type = create_task, titleFollow up with {first_name},hours_from_now = 1, high priority). The wizard creates it only when no enabledlead_createdautomation exists — idempotent by design. - Resolver conditions:
lead_routingcompletes when a mode is set (off/specific/round_robin);followupscompletes when at least one enabledlead_createdautomation exists. - Settings UI:
App\Filament\Pages\Settings\LeadAssignmentSettingsPage(Settings → Lead Assignment) writes the same settings shape.
Related guides
Was this page helpful?
Thanks — noted. ✦