Lead Engine
Sources, routing, buyers, distribution trees, publishers and lead analytics — the flow after capture.
The Lead Engine is the set of pages under Leads that handle what happens to a lead after it's captured: where it came from, who on your team gets it, whether it's sold to a buyer, which traffic partner earns commission for it, and how much profit each source makes.
This guide follows that flow: Sources → Routing → Buyers & Distribution → Publishers → Analytics, plus Lists and Playbooks. Managing individual leads is covered in CRM; capturing leads with quizzes and imported landing pages is in Quiz Funnels & Landing Pages.
All of these pages need the leads: read permission to view. Creating things needs leads: create, editing and pausing needs leads: update, and deleting needs leads: delete.
The flow at a glance
- A lead arrives through a source — an API key, a form, a quiz, a tracking number, an import.
- It's checked for duplicates and suppression, then either routed to a team member or distributed to buyers — or both.
- If the visitor came through a publisher's tracked link, that publisher earns a commission.
- Analytics adds up revenue, commissions, and ad spend per source to show profit.
Sources
Leads → Sources is where you register where leads come from and get the keys that let external pages and partners post leads to you.
Creating a source
- Select New source.
- Enter a Name (for example "Solar quiz funnel — Facebook") and pick a Type: API (external post), Form, Quiz funnel, Chat widget, Inbound call, CSV import, Affiliate, Manual, or Other. Add an optional description.
- Select Create source.
If the type is API, an ingest key is shown once in a dialog, together with a ready-made curl example. Copy it now — it isn't shown again. Partners post leads to POST /api/v1/leads with the key in an Authorization: Bearer header; a lead needs at least an email or phone. Duplicates are reported back as duplicates rather than creating a second lead.
Each source in the list shows its type, the first characters of its key, how many leads it has, and its ingested and duplicate counts.
From a source's ⋯ menu you can:
| Action | What it does |
|---|---|
| Rotate key (or Mint key for sources without one) | Issues a new ingest key and immediately invalidates the old one. |
| Copy capture snippet | Copies a script tag to your clipboard. Paste it on any landing page and the page's forms post their submissions to this source. |
| Pause ingest / Resume ingest | Paused sources reject incoming leads until resumed. |
| Archive | Removes the source from the list. |
Vertical starter packs
At the top of the Sources page are three one-click kits — Solar, Roofing, and Insurance. Installing one creates a vertical, an API source, two sample buyers, an exclusive geo distribution tree for a set of states, a shared tree (with auto-sell off), and a demo publisher with a tracked offer. Re-installing is safe; it skips anything already present. The sample buyer endpoint and offer destination are placeholders — replace them with real ones before selling.
Tracking numbers and calls
The Tracking numbers section registers phone numbers whose inbound calls become leads.
- Buy number — search available numbers by area code, pick one, give it a label, and optionally attribute it to a source, forward it to your sales line, and put it in a DNI pool. The first month is billed to your wallet. This needs telephony configured for your workspace.
- Add number — register a number you already own with your telephony provider. Point its voice webhook at the URL shown on the page. You can set a forwarding number and a greeting. If you have distribution trees, you can also sell calls through a tree: callers are transferred to the tree's best call buyer, optionally after pressing 1 in a short IVR qualifier that filters out robocalls.
- Import CallRail — paste a CallRail calls CSV export. Numbers register themselves (paused until you point them at this platform), callers become or match leads, and calls land in the history. Re-importing the same file skips duplicates; each paste handles up to 2,000 rows.
Each number shows its call count, source, and forwarding target. Use its ⋯ menu to Pause, Resume, Release (numbers bought here) or Archive (numbers you registered).
Dynamic number insertion (DNI): give numbers a shared pool key, then paste the DNI script shown on the page onto a landing page. Each visitor sees their own number, and their calls inherit their UTM attribution.
Suppression list
The Suppression list is your do-not-contact list. Add a Phone or Email and select Suppress. Suppressed leads are never sold through distribution, and matching leads are flagged as soon as they're added. Remove an entry with its bin icon.
Data retention
Once you have at least one vertical, a Data retention section appears. Set a window (7–3650 days) per vertical and a daily sweep redacts contact details on leads older than that — the lead, its sale history, and its consent records are kept; the personal details are not. Leave it blank to keep everything.
Routing
Leads → Routing assigns incoming leads to your team automatically. Rules run top-down and the first rule that matches assigns the lead.
To create a rule, select New rule and set:
- Name.
- Strategy — Round robin rotates leads evenly across the targets; Weighted splits them by the weight you give each target.
- Targets — add team members. Each target can have a Cap/day (maximum leads per day; the rule skips them once reached) and, for weighted rules, a Weight.
- Eligibility filters — leave everything empty to match all leads, or narrow by States, Cities, Exact zips, Zip prefixes, Zip ranges, Min/Max score, and Exclude states / Exclude zips.
When a rule assigns a lead, the assignee gets an in-app notification ("New lead assigned to you") and the lead's activity timeline records which rule routed it. Leads that already have an owner are skipped.
Rules can't be edited after creation. Use the ⋯ menu to Pause, Resume, or Delete a rule (deleting takes effect immediately, with no confirmation). Each rule shows its targets and how many leads it has routed.
Buyers
Leads → Buyers is where you register the companies that buy your leads. A buyer is a delivery endpoint plus a price: leads are posted to the buyer's URL as JSON, and any 2xx response counts as accepted.
Adding a buyer
Select New buyer and enter a Name, Delivery URL, Price per lead ($), and an optional Daily cap. Each buyer in the list shows its price, accepted/delivered counts, cap, and endpoint.
Editing delivery, pricing, and rules
Open Edit delivery & price from the buyer's ⋯ menu. The dialog covers:
| Section | Settings |
|---|---|
| Delivery | The URL, and an optional Accept field / Must equal rule if the buyer signals acceptance in the response body rather than with a 2xx status. |
| Price / cap | Price per lead and daily cap ("Unlimited" when blank). |
| Bidding (ping/post) | An optional Bid ping URL and Bid field. With these set, each lead is first offered without personal details; the buyer's live bid becomes the price, and your contract price is the floor. |
| Buyer eligibility filters | The same state/city/zip/score filters as routing, applied after the tree matches. |
| Call buying | A phone number the buyer rings at, and the number of seconds a connected call must last before it's billed. |
| Delivery headers | Headers sent with every post — API keys, auth tokens. |
| Field mapping | Rename payload fields to the buyer's spec using {{lead.email}}-style templates. Empty means the standard payload. |
| Restrict delivery hours | Days of the week, from/until hours, and a timezone. Outside these, the buyer is skipped. |
| Vertical pricing | Shown when you have verticals: set a price per vertical that beats the generic price for trees scoped to it. |
Other ⋯ actions: Copy portal link gives the buyer a read-only page showing their deliveries, purchases, returns, spend, pricing, and recent purchases — with a Return button for sales inside the return window. Pause stops deliveries; Archive removes the buyer from the list.
Recent sales
Below the buyer list, Recent sales shows the latest deliveries: the lead, the buyer, the time, the price, and a status — POSTED, ACCEPTED, REJECTED, FAILED, SETTLED, or RETURNED. For accepted or settled sales, Return reverses the sale: a buyer who paid through their wallet is refunded, the tree's sold count and revenue are reduced, and any publisher commission is reversed.
Distribution
Leads → Distribution is where you build distribution trees — the rules that decide which buyers a lead is offered to, in what order. New tree is available once you have at least one buyer.
First-sale readiness
The card at the top checks whether you can make a sale: an active buyer, an active distribution tree, auto-sell enabled on at least one tree, and a lead source. Optional checks cover a publisher/offer and the speed-to-lead, lead-sold, and lead-returned workflows. Each item links to the page where you fix it. When you're set, the badge reads Sale ready and shows your last 30 days of sales.
Building a tree
Select New tree and set:
| Setting | Options |
|---|---|
| Mode | Exclusive — one buyer wins; Shared — sell the same lead to up to N buyers at once; Waterfall — cascade through tiers until someone accepts. |
| Default tier order | Price (highest bid or price first), Round-robin (fair rotation), or Weighted. |
| Priority | Lower runs first. Use a low number for exclusive geo trees and a high one for a national fallback. |
| Buyer tiers | Add buyers to Tier 1, Tier 2, and so on (up to 20). Each tier can override the tree's order strategy. |
| Filters | The same state/city/zip/score filters as routing. Empty matches every lead. |
| Auto-sell fresh API leads | Distribute matching leads the moment they arrive. |
How a lead is sold
- The lead must not be suppressed or have an invalid phone.
- The first active tree (by priority) whose filters match is chosen. An exclusive tree won't resell a lead that's already been sold.
- Within each tier, buyers that are active, whose own filters match, and that have a price are kept. Buyers with a ping URL are asked for a live bid first.
- Buyers are ordered by the tier's strategy, then skipped if they've had this lead recently, hit their daily cap, or are outside their delivery hours.
- Exclusive and waterfall trees post to buyers one at a time and stop at the first acceptance. Shared trees post to all eligible buyers at once.
- Every attempt is recorded as a transaction (visible under Recent sales on the Buyers page). Accepted sales update the tree's sold count and revenue and notify you.
Tree actions
Each tree shows its mode, strategy, priority, an auto-sell badge when enabled, its tiers, and its sold count and revenue. From the ⋯ menu:
- Simulate dry-run — see below.
- Edit filters & tiers — change any setting.
- Pause / Resume, Enable auto-sell / Disable auto-sell.
- Optimize order — ranks the tree's buyers by revenue per delivery over the last 30 days and, if you select Apply optimized order, reorders the tiers so the best earners go first. The tree's shape and modes stay the same.
- Delete — removes the tree immediately, with no confirmation.
Simulating a tree
Simulate (in the toolbar, or Simulate dry-run on a tree) lets you test a tree without posting anything or selling anything. Choose Sample geo probe and enter a state, zip, city, and score, or choose Existing lead ID and paste a lead's ID. The result shows whether the tree matches, the order in which buyers would be tried, and for each buyer whether it would be tried, is eligible, or why it would be skipped (paused, filters, no price, outside schedule, daily cap, duplicate window).
Publishers
Leads → Publishers is your affiliate network: traffic partners get a tracked link, and every lead that arrives with their code earns them a commission.
Offers and publishers
- New offer — what publishers promote: a Name, the Destination URL (your landing page), and the Payout per lead.
- New publisher — a partner's Name, optional Email, and how they're paid: CPL (a fixed amount per lead), CPA (an amount when the lead sells), or Rev share (a percentage of the sale). CPA and rev-share commissions are created at $0 when the lead arrives and priced when it first sells.
Each publisher gets a tracking code automatically. Select Get link, pick an offer, and copy the link. It has the form /go/<code>?offer=<offer>&s1=…&s5= — the s1–s5 parameters are the publisher's own campaign tags. A click records the visit, sets a 90-day attribution cookie, and redirects to the offer's destination.
From a publisher's ⋯ menu: Copy portal link (a read-only page where the publisher sees their links, campaign performance, creatives, and recent commissions), Edit payout, Pay out approved, Pause / Resume, and Archive. Paused publishers stop earning and their links stop redirecting.
Publisher self-signup
Select Enable join link to get a public application form. Applications appear in your list as PENDING with Approve and Reject buttons; approving emails the publisher their portal link. Disable turns the join link off.
Creatives
Under Creative library, select Add creative to give publishers banners (an image URL) or swipe copy (text), optionally scoped to one offer. Creatives appear read-only on every publisher's portal.
Commissions and payouts
The Commissions list shows each earned commission with its status — PENDING, APPROVED, PAID, or REVERSED. Select Approve N pending to approve all clean pending commissions at once. Commissions flagged for possible fraud (Duplicate IP or IP velocity) are held out of bulk approval; review them and select Approve anyway if they're genuine.
Pay out approved (on a publisher) groups their approved commissions into a payout batch, listed under Payouts with a status of PENDING, PAID, FAILED, or SIMULATED. A batch only transfers money when payouts are connected for your workspace and that publisher; otherwise it's recorded as SIMULATED with the note "no money moved", and the commissions stay approved.
Sub-ID scoreboard
Once you have publishers, the Sub-ID scoreboard at the top of the page breaks performance down by one of the s1–s5 tags, for one publisher or all of them, over 7, 30, or 90 days: Clicks, Leads, CR (conversion rate), Earned, and EPC (earnings per click).
Analytics: profit per source
Leads → Analytics shows what each source is worth. Pick 7 days, 30 days, or 90 days at the top; everything on the page follows that range.
The KPI cards show Leads, Sold, Revenue, Costs (publisher commissions plus ad spend), and Profit, plus Closed this week — leads this week that reached a real outcome: sold, booked, or paid an invoice.
Sources tab
A table of every source with Leads, Sold, Revenue, Commissions, Spend, Profit, and Profit / lead. To make profit accurate, select Log spend and record one amount per source per day — logging the same day again replaces the earlier figure.
Marketplace tab
Totals for Attempts, Sold, Accept rate, and Revenue, then breakdowns By distribution tree, By buyer, and By publisher (commissions paid). Export CSV downloads the tables.
Attribution tab
How sale revenue spreads across your marketing channels under first-touch, last-touch, linear, and position models. See Analytics for the details.
Ask your data
Type a question — "Which source made the most profit?", "Where am I losing money?" — into Ask your data and select Ask. The answer is based on your real numbers for the selected range. If AI isn't configured for your workspace, you get a plain summary instead, marked "summary (no AI key)".
Sharing reports with clients
Share report opens the Share a report dialog:
- One-off link — set a Title, Window (7/30/90 days), and Attribution dimension, then select Create report link. The link is copied to your clipboard. Anyone with it sees a read-only, print-friendly page under your organization's branding, with live numbers for that fixed window — no login needed.
- Active links — copy, open, or Revoke any link you've created. Links don't expire on their own; revoking is how you turn one off.
- Email on a schedule — enter a client's email, pick Weekly or Monthly, and select Schedule. A fresh report with the title, window, and attribution above is emailed automatically. Existing schedules can be switched off or deleted.
Lists
Leads → Lists groups leads into named segments you can reuse — for example as an audience in Automations.
- Select New list, give it a Name, optional Description, and a Color, and select Create list.
- Select a list, then Add leads to search your leads and tick the ones to add. Leads already in the list are shown as "In list".
- Remove a lead with the × at the end of its row.
- Use a list's ⋯ menu to Rename (name, description, or color) or Delete it. Deleting a list doesn't delete the leads.
Lists are static — leads are only added or removed when you (or an automation) do it. Adding or removing a lead fires the corresponding automation trigger, so you can act on list changes in Automations.
Playbooks
Leads → Playbooks holds checklists for running a lead-generation operation, plus a one-click sales kit.
Buyer-acquisition kit
Select Install kit to create a Buyer Acquisition pipeline (Prospecting → Outreach → Call Booked → Partnership Call → Pricing & Volume → Integration → Won / Lost) and three draft automations: an outreach follow-up cascade, call-booked confirmation and reminders, and a lost-deal constraint check. The automations are created as drafts — open Automations, set the sending accounts, and activate them.
Playbook runs
Select Start playbook, pick a template, name the run, and optionally link a buyer:
| Template | What it walks you through |
|---|---|
| Client Onboarding | Agreement, onboarding form and call, welcome kit, update cadence |
| Lead Gen Setup | Capture pages, delivery, ad accounts, tracking, CRM, and the go-live call |
| Customer Success Loop | Feedback and reporting, adjustments, documented results, testimonial, repeat order |
| Campaign Doctor: Lead Volume | The four levers when you don't have enough leads |
| Campaign Doctor: Profit per Lead | The five levers when margin is thin |
| Campaign Doctor: Lead Quality | The six levers when a buyer complains about quality |
Expand a run to work through its steps: select a step to mark it done; steps marked "if needed" can also be skipped. You can link a lead or a buyer to the run. A run completes when every required step is done; Archive hides it.
When you have recent lead activity, a Campaign Doctor card ranks Lead Volume, Profit per Lead, and Lead Quality by how much each is holding you back, with a Start checklist shortcut on anything rated Watch or Work this first.
Related
- CRM — managing individual leads.
- Quiz Funnels & Landing Pages — capturing leads.
- Analytics — the tracking pixel, call pools, and attribution.
- Automations — act on routing, list, and playbook events.
- Account & Team — roles and permissions.