We judge the Prospeo flow on three things: what a usable lead costs, how many records survive each stage (throughput — the funnel), and how long a batch takes plus what bounds it (speed). Numbers below are measured on the Riipen Alberta full drain (45,166 sourced, confidence-1.0) and the Terraboost 5-city drain.
A live DNS re-resolve of the Riipen valid set (14,946 records, 2026-06-21) found 76% on Microsoft (17% Google, 5% other custom, 2% gateway) — infrastructure we can’t send to today. Only ~21.5% is sendable. Every cost figure has two versions: send-ready (what the flow produces) and sendable-today (what we can actually mail). The gap is ~4–5×. Unlocking Microsoft sending is worth more than any sourcing optimization.
Prospeo is contact-first: it finds named people by ICP cheaply, but returns the email masked. The email is recovered by a cost-ordered waterfall — cheapest tool first, paid fallback last.
No single tool finds every email. QuickEnrich (flat-fee, LinkedIn→email) catches ~25% of sourced; website crawl mops up the QE-misses and is where most of the incremental yield comes from. AI Ark (as an in-waterfall finder) is cheap per match but low-yield once crawl is on — in the live BC drain it found 6 emails vs crawl’s ~960 in the same window, and its async poll adds a ~300s barrier — so the fast fresh-drain playbook drops it. Bigger lever: a prospeo_unmask step (reveal the verified masked email Prospeo already holds) would catch ~34% of QE-misses before crawl even runs.
Each client’s funnel is different enough to model separately. Same flow, same tools — but ICP breadth (qualify rate) and email infrastructure (MX mix) move the numbers a lot. Funnels shown as % of contacts sourced.
| Stage (% of sourced) | Riipen | Terraboost |
|---|---|---|
| Sourced (Prospeo search) | 100% | 100% |
| Qualified (ICP gate) | ~96% | 48% |
| After denylist + dedup | ~84% | ~45% |
| Email found (full waterfall) | ~41% | ~28% |
| Send-ready (Reoon valid+risky) | ~34% | ~20% |
| Sendable today (Microsoft parked) | ~7.3% | ~10% |
| — Microsoft share of valid | 76% | 51% |
| — Sendable (Google + other) | 21.5% | 49% |
Riipen: broad ICP (almost everything qualifies) but 76% Microsoft (live DNS re-resolve, 14,946 valid, 2026-06-21) — the MX gate is brutal. Terraboost: strict kiosk ICP drops half at qualify, but a friendlier 51% Microsoft / 39% Google mix (5-city drain) means more of what survives is actually sendable. Net: the two clients land at similar sendable-per-sourced for opposite reasons.
| Tool | Role | Unit cost | Marginal |
|---|---|---|---|
| Prospeo | Source contacts (email masked) | $0.01 / credit · 25 contacts/cr | $0.0004 / contact |
| QuickEnrich | Primary email finder | $400/mo flat · ~9.9M cr headroom | ~$0 |
| Website crawl | Primary mop-up finder | Firecrawl ~$0.004/page | ~$0 static / cheap render |
| AI Ark (in-waterfall) | LinkedIn→email finder | $0.005/match, 0 on miss | cheap but low-yield |
| AI Ark (bulk re-source) | Backfill via full export | bills all emails returned | ~$0.03/net recovery |
| Reoon | Verification | $960 / 2.5M credits (depletes) | ~$0.0004 / email |
Two AI Ark modes: the in-waterfall finder (LinkedIn→email, 1 cr/match) is cheap but barely contributes once crawl is on; the bulk re-source backfill can’t target specific contacts, so it bills for the whole export (~$0.03 per net-recovered email) — that’s the expensive one, and it’s not in the default flow.
| Metric | Riipen | Terraboost |
|---|---|---|
| Cost / send-ready lead | ~$0.005 | ~$0.008 |
| Cost / sendable-today lead | ~$0.020 | ~$0.015 |
| Primary cost driver | 76% Microsoft parked | strict qualify (48%) |
The flat QuickEnrich fee means Prospeo sourcing + crawl renders are the main variable costs (Reoon adds ~$0.0004/email; the in-waterfall AI Ark barely fires). Riipen wastes spend on the back end (sources cheaply, qualifies almost everything, then the Microsoft gate discards 78% — so cost-per-sendable is high). Terraboost wastes it on the front end (half drop at qualify before any paid finder runs) but keeps far more after the friendlier MX gate — so it’s cheaper per sendable despite the lower qualify rate. Same flow, opposite loss points.
Output per stage — how many records survive each step. This is the funnel, the same flow for every client (qualify/find rates shift the proportions). Per 10,000 contacts sourced (Riipen):
| Stage | Output / 10K | Survival |
|---|---|---|
| Sourced (Prospeo) | 10,000 | — |
| Qualified | ~9,600 | 96% |
| Reach finder (after denylist + dedup) | ~8,400 | 84% |
| Email found — QuickEnrich | ~2,500 | 25% |
| Email found — + crawl (full waterfall) | ~4,100 | 41% |
| Verified send-ready (valid+risky) | ~3,400 | 34% |
| Sendable (passes MX gate) | ~730 | 7.3% |
QuickEnrich finds ~25% of sourced; crawl lifts the full waterfall to ~41%. Of the records that still miss, ~34% carry a Prospeo-revealable verified email (recoverable with a prospeo_unmask step we haven’t added yet) — the other ~66% have no findable email anywhere (verified: re-running them yields 0%). So found-rate can realistically climb from ~41% toward ~55%, but there’s a hard ceiling well under 100%. After email-find, the MX gate is the next big drop (34% → 7.3%).
Wall-clock and what bounds it. Sourcing is fast; the email-find waterfall governs the clock, and it’s concurrency-bound, not worker-bound.
| Stage | Concurrency / limit | What bounds it |
|---|---|---|
| Prospeo sourcing | ~1.6/s (100/min) | API rate limit · 500K = ~3.3 hrs |
| QuickEnrich | conc 8 · 900/min | rarely the bottleneck |
| Website crawl | conc 48 · Firecrawl 50 cap | the bottleneck — one batch saturates Firecrawl |
| AI Ark reveal | 300s poll / sub-batch | async barrier — why fast drains drop it |
| Reoon verify | bulk | not a bottleneck |
Website crawl already runs at concurrency 48 within a single batch — one batch nearly maxes Firecrawl’s 50-concurrency ceiling. Running many parallel Phase-B workers oversubscribes the same 50-slot pool (the limiter throttles start-rate, not in-flight concurrency), causing 429 backoff — which is exactly why some chunks in the live drain ran multi-hour. To go faster: (1) raise the Firecrawl concurrency plan (50→200 ≈ 4×), or (2) cut crawl volume by lifting upstream find-rate (e.g. prospeo_unmask). Not more workers. The lever for cost is the Microsoft gate; the lever for speed is the Firecrawl ceiling.
A typical client runs ~30K sends/week. On a 2-step sequence that’s roughly ~15K new mailable leads/week entering at steady state (~65K/month). Because the funnels differ, the sourcing volume and cost to feed that target differ by client.
| Per client @ 30K sends/wk | Riipen | Terraboost |
|---|---|---|
| Sendable / sourced (parked) | ~7.3% | ~10% |
| Contacts to source / month | ~890K | ~650K |
| Prospeo credits / month | ~35,600 | ~26,000 |
| Prospeo $ / month (@ $0.01/cr) | ~$356 | ~$260 |
| Total $ / month — Microsoft parked | ~$1,400–2,100 | ~$1,100–1,700 |
| Total $ / month — Microsoft unlocked | ~$600–1,000 | ~$700–1,100 |
Variable lines (both clients): Prospeo sourcing + crawl renders are the main metered costs; QuickEnrich ($400/mo flat) doesn’t scale with volume; Reoon adds ~$0.0004/email (and depletes its 2.5M-credit pack). Microsoft-unlocked roughly halves Riipen (frees its 76% parked pile) but helps Terraboost less — it was already 49% sendable.
A 30K-sends/week client lands at ~$1,100–2,100/month parked, ~$600–1,100 with Microsoft unlocked. The flat QuickEnrich fee amortizes across every client on the flow — the 2nd and 3rd clients are cheaper per-lead than the 1st. At this volume the Prospeo PRO plan (16,667 cr/mo) must be upgraded; the $3,500/mo · 350K-credit add-on covers ~10 clients at once ($0.01/cr). For Terraboost specifically, the GMaps business-first path (email free with the scrape, $0.005/result) can undercut the Prospeo+waterfall path inside kiosk cities.
| Input | Status | Source / caveat |
|---|---|---|
| Funnel rates (qualify, find, valid, MX split) | measured | Riipen Alberta full drain (45,166), confidence 1.0 + Terraboost 5-city |
| Throughput (per-stage funnel) | measured | Riipen Alberta full drain |
| Speed bound (Firecrawl 50-conc) | measured | website_crawl conc 48; limiter is per-process, start-rate only — parallel batches oversubscribe |
| QuickEnrich flat $400/mo | measured | ~9.9M credit headroom on key → effectively flat at our volume |
| Reoon ~$0.0004/email | measured | $960 per 2.5M-credit pack — small but depletes (NOT free) |
| Prospeo $0.01/credit | measured | Scale price: $3,500/mo ÷ 350K-credit add-on. Per-seat tiers run $49–249/mo (2K–15K cr) |
| AI Ark $0.005/match (in-waterfall) | measured | 1 cr/match, 0 on miss; low-yield once crawl on. Bulk re-source backfill bills ~$0.03/net recovery |
| 30K sends → ~15K new leads/wk | assumption | 2-step sequence; adjust if sequence depth differs |
| Microsoft-sendable % | measured | Live DNS re-resolve 2026-06-21 (n=14,946); re-resolve again before each send cycle |