THE PRODUCT IS THE FUNNEL
Antare’s go-to-market machine: a closed-loop marketing and PLG engine where in-product signals — not marketing guesses — move a lead from cold to product-qualified.
THE CONTEXT
An early-stage company needs a go-to-market engine before it can afford one. The first vendor quote came in at £150k a year — for a platform that did roughly half of what we needed. That’s the ordinary half of the build-vs-buy call, and on its own it might not have settled it.
The real answer was the other half: nothing on the market does the thing that matters. Every marketing cloud treats the product as a black box — leads are scored on emails opened and pages visited, and the journey stops at the signup wall. For a product-led company, the strongest buying signals happen inside the product. I wanted an engine that watches those signals and routes each lead through a bespoke journey — cold to MQL to product-qualified — driven by what they actually do, not what marketing hopes they’ll do. That, I believed, was a genuine differentiator for product-led growth. So I built it.
THE PROBLEM
A growth engine is easy to sketch and unforgiving to run. It touches real inboxes, real ad budgets, and real compliance obligations from day one — and it has to serve two different funnels at once without ever crossing the streams.
- P.1Martech stops at the signup wall — product usage is invisible to the tools that decide who gets nurtured.→
- P.2Two funnels, one contact base: cold outbound and product-led nurture must coexist without double-messaging anyone.→
- P.3Suppression, unsubscribes and deliverability are load-bearing — one mishandled complaint costs more than a lost lead.→
- P.4If you can’t trace cause→effect for any contact, you don’t have an engine — you have a liability.→
THE APPROACH
Same method as everything on this site: spec first, engine as a testable core, plumbing last. And one decision that made the whole thing safe to build fast — the engine runs in two modes, simulation and live, and they are the same engine. Only the delivery layer switches.
Simulation mode runs the entire closed loop with every channel mocked: a hundred synthetic contacts arrive as anonymous visitors, get emailed, see retargeting ads, respond according to receptiveness profiles — and every stage transition emerges from the automation rules, nothing pre-scripted. The funnel logic, sequence cancellation, re-enrolment and scoring were all validated before a single API key existed. Then each live channel was switched on behind its own flag, one at a time, test-scripted block by block.
Simulate the whole funnel before the first real email. Then go live one flag at a time.
The loop ran the same way it does everywhere else: spec, prompt and code in the same folder, investigation directly against the live APIs, and mistakes promoted to design changes within days. The config system is the honest example — the first version of live editing let a dashboard toggle silently shadow changes made in git; the redesign (operator edits stored as scoped deltas overlaid on the versioned config) shipped days later, and the bug class is now structurally impossible. Two ad platforms went from untested to verified-live in the same week.
THE BUILD
One Python engine, one database, no martech sprawl. Lead intake and attribution capture, declarative routing into nurture sequences, email and ad-audience sync across five platforms, a product-signal bridge that turns real usage events into stage transitions, an account-level view for product-qualified accounts — and a BDR queue that surfaces the right human at the right moment. All of it audited, suppressible, and traceable per contact.
- D/01SIMULATION AND LIVE ARE ONE ENGINE — FUNNEL LOGIC PROVEN CLOSED-LOOP BEFORE ANY API KEY EXISTED.—
- D/02PRODUCT SIGNALS DRIVE THE FUNNEL — IN-PRODUCT EVENTS, NOT EMAIL OPENS, MOVE A LEAD FROM COLD TO PQL.—
- D/03SUPPRESSION IS CANONICAL, ONE-WAY STATE — NOT A TAG. A COMPLAINT OR UNSUBSCRIBE CAN NEVER BE OUT-VOTED.—
- D/04CONFIG IS CODE, LIVE EDITS ARE DELTAS — A DASHBOARD TOGGLE CAN NEVER SILENTLY MASK A VERSIONED CHANGE.—
- D/05EVERY CONTACT IS TRACEABLE — ONE TIMELINE PER PERSON: EMAILS, ADS, SIGNALS, STAGE CHANGES, CAUSE→EFFECT.—
THE OUTCOME
This is Antare’s go-to-market infrastructure today: intake from the website and outbound lists, nurture across two funnels, live ad audiences kept in sync as contacts move stages, product signals flowing into qualification, and a working queue for the humans. Built and operated by the product manager — while the engineering team built the product.
That last sentence is the case study. The conventional wisdom says a startup PM chooses between doing product work and renting a six-figure growth stack that treats the product as a black box. With the loop rebuilt, there was a third option: specify the differentiated thing precisely, and build it — test-first, simulation-first, evenings and gaps included — for a tenth of the money and a fraction of a headcount. The engine isn’t the moat. The way it got built is.