Prospecting engine
One machine, running every month. It watches the show calendar, scans every business in the target verticals for what they are missing, then narrows to the ones raising a hand. Three parts of it are working today, and you can run all three on this page.
The machine
Stage one
The full show calendar per vertical. Who is exhibiting, who is sponsoring, who is publicly saying they will be there.
Dated. A true reason to call this month.
Stage two
Every business in the verticals, every month. What software they run, what they spend on, and what they are missing.
The gap becomes the opening line.
Stage three
Opens, clicks and return visits narrow the scan to the businesses actually paying attention right now.
This is the call list. And the ad audience.
Stage one
91 shows mapped across four verticals, with 1,026,200 people walking through them a year. Every date is public months ahead, which means the outreach window can be computed instead of remembered.
Demo 1 · live
All 91 events, with the outreach window recomputed against your clock right now. Pick any show to see its real exhibitor list, the dated sequence, and the message that would go out.
One thing to be clear about
An exhibitor directory lists the companies selling on the floor: equipment makers, software vendors, apparel brands. The golf courses, gyms, bowling centres and pool builders we actually want are the people walking the aisles, and no organiser publishes that list. So the shows give us two different things. The exhibitor lists are a clean B2B segment we can work today. The attendees are the core ICP, and reaching them is exactly what the monthly scan in stage two is for.
Stage one, end to end
Nobody schedules any of this. The show date drives every step, and the same sequence runs across all 91 shows without anyone touching it.
Stage two
Shows are seasonal. This runs every month across every business in the verticals: enumerate, load each site in a real browser, record what it calls out to, diff against last month, and route on what changed. 311 businesses across 30 trades and 12 metros have been through it so far, and at 500,000 sites a month the infrastructure costs roughly $280.
Demo 2 · real captures
These are 311 businesses the scanner actually visited. Every tool listed below was observed in the page’s own network traffic. The opener is generated from the gap, not written in advance.
The gap is the opener
The rep never opens with who we are. They open with something true and specific about that business, found this month.
Stage three
The first two stages produce more prospects than anyone can call. This stage decides the order, and it feeds marketing the same audiences it hands sales.
Demo 3 · the sort
The scan and the calendar produce more prospects than anyone can call. Each signal you add cuts the list and moves the warmest names to the top. Engagement here is modelled, because nothing has been sent yet; everything else is the real capture.
Zero in the bottom row is the finding, not an empty state. Every one of the 301 businesses the scan surfaced across 5 verticals and 12 metros had at least one nameable gap, which is why all of them are worth a sequence and only a handful are worth a call this week.
The output
Everything above produces one thing: a ranked book of businesses with a reason to call each of them. This is that book, built from every scan run so far, sorted by score and filtered the way a rep would filter it.
The output
Everything the scan has produced, in the form a rep would actually receive it. Filter it, search it, and take the list out as a CSV. 10 existing customers are already excluded.
Runtime
A scan that produces a list nobody sends is a report. This is the path from the scheduled job to an email that a prospect actually receives, and the three options for who it comes from.
Runtime
The scan is a scheduled job. What it produces has to reach a rep’s queue and a prospect’s inbox without anyone copying a spreadsheet. Here is the loop, and the three ways to send at the end of it.
Dedicated cold-send
Highest volume. The right choice for the monthly scan, where the list is large and cold.
How it wires up
Why you would pick it
What it costs you
The realistic recommendation is two of them, not one. Cold volume from the monthly scan goes out of a dedicated tool on secondary domains, so podium.com is never the thing being burned. Anything that has already engaged moves into the CRM and is sent by the rep who owns it. The scan writes to both.
Dependencies
The demos above are the parts that work. Turning them into something that runs without anyone watching is a different question, and it is mostly a question about access and plumbing rather than about clever code. Here is every link in each chain, and what each one is waiting on.
The dependency map
Every stage is a chain, and a chain automates only as far as its weakest link. Each step below carries what it depends on, what would run it, and whether that exists today.
Fires per show, on the show's own dates. Roughly 61 chains running at different offsets.
A daily job asks which shows crossed into their window today.
GitHub Actions cron, or Vercel Cron. Calendar already exists as JSON.
Pull the exhibitor, sponsor and speaker directory from the organiser.
Map Your Show and a2z parsers are written and working. Swapcard needs a registered attendee account. EventScribe is partial.
Turn a company name on a booth sign into a domain and named contacts.
Apollo at $49 a seat covers the technology filter and contacts. Clay if the waterfall needs to be richer. Expect 60–70% resolution, not 100%.
Drop existing customers, open opportunities, and anyone a rep already owns.
Salesforce or HubSpot read API. This is the step that decides whether sales trusts the list.
Enrol the survivors into the dated sequence for that show.
Outreach, Salesloft or Apollo sequences. This is the real ceiling: about 158 unique prospects per mailbox per month, so 500 mailboxes reach roughly 79,000.
Opens, clicks and replies flow back and change the record's level.
Sequencer webhooks into Postgres. Feeds stage three directly.
Where this breaks
Status
The scan has run across 30 trades in 12 metros, covering 311 businesses so far. 10 turned out to be Podium customers and dropped out on their own. 30 were running a competing tool nobody had flagged. None of that required anyone to look at a website by hand.
Sports and recreation is the emptiest vertical we have scanned. Across 9 trades — bike shop, bowling alley, climbing gym, fitness studio, golf course, gym, martial arts school, pilates studio and swim school — 93 of the 99 businesses have no conversation layer of any kind: no chat, no review tool, no competitor. 63 of them are buying ads into that.
Only software that runs in the browser. A tool that never loads a script is invisible to this, which makes the coverage real but not total.
Engagement in the third demo. Nothing has been sent yet, so those signals are derived rather than measured. The scan and the calendar are real captures.
One vertical to start in, one engineer for six weeks to put it on a schedule and into the CRM, and marketing in the loop from week one.
The shows publish who is going. The websites publish what they run. The clicks tell us who is ready. All anyone has to do is look every month, and go in that order.
Open the target book