Workspace

Leads

Every prospect in your pipeline. Leads come from your public lead-capture forms, the booking page, CSV imports, and manual entry. The list page is where most agents spend the bulk of their day.

Quick answers
Two people filled the form with the same email. Did I get two leads?
No. Same email is treated as the same person. The system merges names (longer real name wins), keeps existing phone and coverage values when the new submission is blank, and adds the new source to the lead's source list. Original capture wins on UTM and gclid.
What do the lead statuses mean?
New (just captured), Contacted (you reached out), Replied (they answered), Quoted (you sent a quote), Won (became a client), Lost (didn't close). Moving to Contacted stamps last_contacted; Replied stamps last_replied. Moving to Won creates the client record (name, contact info, demographics, assigned agent) plus one pending policy with the product already filled in, and the lead page links you straight to it so you can add the carrier, premium, and dates.
How do I find "Final Expense leads in Texas I haven't contacted in two weeks"?
Click + Filter in the toolbar three times: Insurance type equals Final Expense, State equals TX, Last contact not within 14 days. Each one becomes a chip above the table and lives in the URL, so you can bookmark the view or send the link to a teammate. Leads that have never been contacted count as "not within".
How do I bulk-edit a bunch of leads?
Check the boxes on the rows you want, the action bar slides up from the bottom. From there: change status, set insurance type, set assigned agent (Team plan), add a source, or delete. Bulk actions write to every selected row in one go and are not undoable.
Can I customize what columns show?
Yes. Click Columns in the toolbar, check the ones you want. Your selection persists per workspace. Custom fields you've defined appear in the list too.

List page layout

The page has four parts. A KPI strip at the top (total leads, active, quoted, conversion rate). A segments rail on the left with quick views like "Active", "New this week", "Won", and one row per status, source, or assignee. A toolbar with search, filters, sort, and the columns picker. A table of every lead matching the current filters with the bulk-action bar hidden until you select something. The Pipeline | List switch in the banner jumps to the kanban board with the same type and source slice applied.

Filters

+ Filter opens a small dialog: pick a field, an operator, and a value. The field list has every lead field (status, insurance type, source, state, city, county, ZIP, gender, email, phone, coverage amount, last contact, last reply, created date, and "Assigned to" on Team plans) followed by your custom fields. The operators change with the field. Text fields get equals / contains / is empty. Status is a dropdown. Dates get "within N days", "not within N days", "before", and "on or after". "Assigned to" offers Me, Unassigned, or a member by name.

Applied filters show as chips above the table; click a chip to remove it, or "Clear all". Filters stack with the segment rail and the toolbar selects, and they stay in the URL across sorting and paging. A filter that no longer makes sense (a custom field you deleted, a date that isn't a date) is dropped quietly instead of breaking the page.

Quick view

The eye icon at the right end of every row opens a side panel with the lead's email, phone, insurance type, coverage, state, sources, last contact, last reply, time in the current status, and a note count. A six-button grid at the bottom moves the lead to another status without leaving the list (the row refreshes after the move). Open lead and Email buttons take you to the detail page. ?qv=<id> on the list URL opens the panel for that lead on load, which makes a handy link to drop in a task or a Slack message.

Capturing leads

The most common source is your public lead-capture form posting to /api/leads. Booking-page submissions also create leads (or attach to an existing client if the email matches). You can add a lead manually using the + New Lead button, or import a CSV with the Import button. Import dedups on email + first/last name and updates matching rows in place.

The CSV needs first_name, last_name, and either email or phone. Optional columns: middle_initial, date_of_birth, gender, address, city, county, state, zip_code, insurance_type, coverage_amount, source, gclid, utm_source, utm_medium, utm_campaign, utm_content, utm_term, plus one column per custom field (lowercase, spaces as underscores). Headers aren't case-sensitive, and utm source with a space works too.

The New Lead form also has a collapsed Attribution (optional) section with the same six fields. Use it when a lead came in by phone or referral and you know which campaign sent them. However a lead arrives, the first gclid and UTM values it gets are the ones that stay. A later import or edit with different values won't replace them.

Detail page

Open any lead to see the full record. The Identity & Profile section carries name, email, phone, demographics, insurance type, and any custom fields. Below it: notes and history, the email composer with the full thread, and the engagement card with workflows, tasks, and appointments attached to this lead.

Email attachments

The lead email composer takes file attachments — up to 5 files, 10MB each, 24MB total (PDF, images, Word, Excel, or text). You can upload fresh files or tick any document already on file for this lead to send it along. Sent attachments show as download chips in the email history below the composer.

Assignment (Team plan)

Each lead has an optional owner. The picker on the detail page (and the "Assigned to" bulk action) sets it. The dashboard's "Assigned to me" card and the "By assignee" segments rail use this field. New booking-page appointments routed for an assigned lead try to land on that agent's calendar first. Solo plans don't see any of this.

Sources and attribution

A single lead can carry multiple sources. The first source from the capture is the canonical attribution; later sources (booking-page steps, re-submits) get added without overwriting. Google ads click IDs (gclid) and UTM parameters are captured once on first touch and never overwritten.

Where leads come from

Whatever the entry point, the same email always means the same lead, and every source a person arrives through is kept on the record.