| A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | WHAT IT COSTS TO BUILD AND RUN THIS DATASET | |||||||||||||||||||||||||
2 | Scenario B · one vertical, national — A single vertical covered nationally. The default sizing. Hard costs only: headcount, data contracts, credits, infrastructure. | |||||||||||||||||||||||||
3 | ||||||||||||||||||||||||||
4 | Cost | Note | ||||||||||||||||||||||||
5 | BUILD — one-time | $853,912 | Everything before a single usable record exists | |||||||||||||||||||||||
6 | Run — year 1 | $1,344,106 | ||||||||||||||||||||||||
7 | Run — year 2 | $1,392,338 | Universe growth, escalators, salary inflation | |||||||||||||||||||||||
8 | Run — year 3 | $1,442,455 | ||||||||||||||||||||||||
9 | RUN — three years | $4,178,898 | This is the number that gets left off build proposals | |||||||||||||||||||||||
10 | 3-YEAR TOTAL COST OF OWNERSHIP | $5,032,810 | Build once, run for three years. Put a vendor quote on this same clock, never on the build alone | |||||||||||||||||||||||
11 | ||||||||||||||||||||||||||
12 | WHERE THE MONEY ACTUALLY GOES (three-year totals) | |||||||||||||||||||||||||
13 | Category | 3-year cost | Share of total | What sits in here | ||||||||||||||||||||||
14 | People | $3,525,262 | 70.0% | |||||||||||||||||||||||||||| | Build task table, the operating team, on-call, and the model-migration tax | |||||||||||||||||||||
15 | Data contracts | $803,125 | 16.0% | |||||| | Vendor licences plus their one-time onboarding fees | |||||||||||||||||||||
16 | Credits & processing | $512,166 | 10.2% | |||| | Scraping credits, LLM judgments, verification APIs, continuous QA — including the first full pass | |||||||||||||||||||||
17 | Infrastructure | $184,758 | 3.7% | | | Storage (rent), compute (taxi meter), movement (tolls) | |||||||||||||||||||||
18 | Golden dataset & other setup | $7,500 | 0.1% | The hand-labelled truth set, plus any displaced roadmap work you chose to price | ||||||||||||||||||||||
19 | TOTAL | $5,032,810 | 100.0% | Should read 100% — if it does not, a line has been added without being categorised | ||||||||||||||||||||||
20 | Reconciliation check (should be zero) | $0 | Categories vs. the headline total | |||||||||||||||||||||||
21 | ||||||||||||||||||||||||||
22 | UNIT ECONOMICS — what you get for it | |||||||||||||||||||||||||
23 | Value | Note | ||||||||||||||||||||||||
24 | Records delivered (contacts in scope) | 500,000 | Locations × contacts per location | |||||||||||||||||||||||
25 | Accurate, in-recall records per year | 318,750 | Contacts in scope × accuracy × recall — the ones a rep can actually work | |||||||||||||||||||||||
26 | COST PER ACCURATE RECORD PER YEAR | $5.26 | Total ÷ three years of usable records. The only number that compares two options honestly | |||||||||||||||||||||||
27 | → excluding people | $1.58 | Drops the build team, the operating team, on-call and the migration tax. Keeps data contracts | |||||||||||||||||||||||
28 | → credits + infrastructure only | $0.73 | Pure machine cost. This is roughly the number a build proposal computes — and why it is several times too low | |||||||||||||||||||||||
29 | Cost per record touched, per refresh cycle | $0.0090 | Blended scraping + LLM cost per signal-refresh | |||||||||||||||||||||||
30 | Year-1 run cost per record | $5.38 | What one location costs you to keep current for a year | |||||||||||||||||||||||
31 | ||||||||||||||||||||||||||
32 | GUT CHECKS | |||||||||||||||||||||||||
33 | Value | Target | Note | |||||||||||||||||||||||
34 | Run over 3 yrs ÷ build cost | 4.9 | at least ~2× | Below that and the long tail is underestimated. Collection is the cheap part | ||||||||||||||||||||||
35 | Build share of lifetime cost | 17.0% | ~30% or less | The other 70% is refresh, breakage, source churn and QA | ||||||||||||||||||||||
36 | Infrastructure per month | $5,000 | ≥ ~$5,000 | The floor for one vertical at 95% precision. Below it, something is unscoped | ||||||||||||||||||||||
37 | Implied average team size during the build | 4.3 | 2-8 FTE | Total FTE-months ÷ calendar months. Outside that range, revisit the task table | ||||||||||||||||||||||
38 | People as a share of total cost | 70.0% | expect 60-80% | If credits and infrastructure dominate instead, the pipeline design needs another look | ||||||||||||||||||||||
39 | ||||||||||||||||||||||||||
40 | HOW TO USE THIS | |||||||||||||||||||||||||
41 | Scope | This calculator prices the hard cost of building and running the dataset. It does not price what bad data costs your sales team, or what the wait costs you — those are separate arguments. | ||||||||||||||||||||||||
42 | ||||||||||||||||||||||||||
43 | 1. | Open Inputs. Every shaded cell is editable; nothing else in this workbook is. | ||||||||||||||||||||||||
44 | 2. | Fill the BUILD task table in FTE-months. The task list is fixed — the headcount is your call. | ||||||||||||||||||||||||
45 | 3. | Calibrate the credit tables from a real pilot: 250-500 accounts for scrapers, 500-1,000 for a full run. Cost every signal, not just the website. | ||||||||||||||||||||||||
46 | 4. | Get an engineer to price storage, compute and movement — they grow on three different things. | ||||||||||||||||||||||||
47 | 5. | Use the Scenarios tab to see how all of it moves with TAM size. | ||||||||||||||||||||||||
48 | ||||||||||||||||||||||||||
49 | Storage | Rent. Grows by keeping more records — not by usage. | ||||||||||||||||||||||||
50 | Compute | A taxi meter. Grows by adding always-on processes — not by more queries or more data. | ||||||||||||||||||||||||
51 | Movement | Tolls. Grows with refresh frequency: weekly instead of monthly is 4× on the same data. | ||||||||||||||||||||||||
52 | ||||||||||||||||||||||||||
53 | ||||||||||||||||||||||||||
54 | ||||||||||||||||||||||||||
55 | ||||||||||||||||||||||||||
56 | ||||||||||||||||||||||||||
57 | ||||||||||||||||||||||||||
58 | ||||||||||||||||||||||||||
59 | ||||||||||||||||||||||||||
60 | ||||||||||||||||||||||||||
61 | ||||||||||||||||||||||||||
62 | ||||||||||||||||||||||||||
63 | ||||||||||||||||||||||||||
64 | ||||||||||||||||||||||||||
65 | ||||||||||||||||||||||||||
66 | ||||||||||||||||||||||||||
67 | ||||||||||||||||||||||||||
68 | ||||||||||||||||||||||||||
69 | ||||||||||||||||||||||||||
70 | ||||||||||||||||||||||||||
71 | ||||||||||||||||||||||||||
72 | ||||||||||||||||||||||||||
73 | ||||||||||||||||||||||||||
74 | ||||||||||||||||||||||||||
75 | ||||||||||||||||||||||||||
76 | ||||||||||||||||||||||||||
77 | ||||||||||||||||||||||||||
78 | ||||||||||||||||||||||||||
79 | ||||||||||||||||||||||||||
80 | ||||||||||||||||||||||||||
81 | ||||||||||||||||||||||||||
82 | ||||||||||||||||||||||||||
83 | ||||||||||||||||||||||||||
84 | ||||||||||||||||||||||||||
85 | ||||||||||||||||||||||||||
86 | ||||||||||||||||||||||||||
87 | ||||||||||||||||||||||||||
88 | ||||||||||||||||||||||||||
89 | ||||||||||||||||||||||||||
90 | ||||||||||||||||||||||||||
91 | ||||||||||||||||||||||||||
92 | ||||||||||||||||||||||||||
93 | ||||||||||||||||||||||||||
94 | ||||||||||||||||||||||||||
95 | ||||||||||||||||||||||||||
96 | ||||||||||||||||||||||||||
97 | ||||||||||||||||||||||||||
98 | ||||||||||||||||||||||||||
99 | ||||||||||||||||||||||||||
100 | ||||||||||||||||||||||||||