Built for the Supy GTM Engineer case study
36 real companies, sourced, gap-handled, enriched, scored, and stored against live data throughout, not mocked. KSA's data coverage measured thinner than the UK's in this exact run, 47% vs. 74% first-pass match, and that finding changed the actual approach for that market, not just the numbers in a slide.
Stack used in this build
Real companies
19 UK, 17 KSA. 29 with a real waterfall-verified contact.
Send-ready, not sent
DRAFTED in Smartlead, every lead also globally unsubscribed. One authorization away from live.
Bonus · 3:10 narrated walkthrough
Neural voice narration (MiniMax) over the real screens: the pipeline, the scoring engine, the Supabase system of record, and the honesty boundary around Smartlead. The required Loom still gets recorded separately, in my own voice. This is a bonus asset only.
The pipeline
TAM definition feeds both markets through Apollo. UK matched clean. KSA didn't, so the pipeline branches: Apify Google Maps and Serper find the company, Firecrawl reads the real site, and Apollo gets retried on the corrected domain before anything is stubbed.
Stage 1
UK: 74% first-pass match. KSA: 47% on the same provider, same method, real and disclosed, not smoothed over.
Stage 2
6 of 8 KSA gaps fixed via cross-check: Google Maps finds the company, Firecrawl reads the site, Apollo retries on the corrected domain. What's left gets stubbed and disclosed, not guessed.
Stage 3
29 of 36 companies land a real verified contact. 2 were recovered mid-build by finding the real mail domain via direct DNS lookup after the .com domain returned no MX record at all.
Stage 4
Size fit, multi-brand complexity, data confidence, reachability, each 0-25. UK routes to email/LinkedIn. KSA routes to WhatsApp/Instagram, a reachability finding, not a stylistic choice.
The finding that changed the plan
This isn't a stylistic choice or a hedge, it's what the data actually showed once real sourcing ran against both markets.
Clean data, real names, real emails, high confidence. Efficiency-first tone works: email and LinkedIn-led, 3 real non-template touches.
About 43% of sourced companies needed manual verification before they were even workable. Verify-first, relationship-first tone, WhatsApp and Instagram-led, not email.
scoring/score_engine.py
Same rubric-and-routing pattern used elsewhere in production, run here against real sourced data instead of a mocked sample.
75+, Tier 1: priority outbound, verify contact manually first.
55-74, Tier 2: standard outbound sequence.
35-54, Tier 3: nurture / batch outbound, low individual effort.
Below 35: not yet, data too thin, re-source before working.
outbound/intent_signals.md
Every signal below has a real, dated source from research already run for the contact waterfall, reused for a second purpose, not new fabricated signal. Where nothing real was found, the company is left off this list rather than padded out.
| Company | Market | Signal |
|---|---|---|
| Epik Foods | KSA | $15.5M raised (Ruya Private Capital, Nov 2024), earmarked for a 20-restaurant Riyadh/Jeddah/Dhahran expansion. Strongest signal in the dataset. |
| Tasty plc / Bow Street | UK | £9.25m raise (Aug 2025) plus a new exec chairman (David Page, ex-PizzaExpress CEO) with a publicly announced expansion strategy. |
| The Azzurri Group | UK | Exclusive Dave's Hot Chicken JV, 180 restaurants across 10 countries (Sept 2025), against a £2.7m operating loss from launch costs. Real Head of Purchasing contact found. |
| Al Hokair Group → BAAN | KSA | New Group CEO (March 2024) plus a full corporate rebrand and a new NEOM food/catering division. Real change-management window. |
| Honest Burgers | UK | Bad-timing flag: three CEOs in ~18 months. Deprioritized despite a workable firmographic score. |
| Boparan Restaurant Group | UK | Bad-timing flag: CEO stepped down, no replacement named. Deliberately not pursued. |
The static rubric has no timing dimension. These real signals move Epik Foods and Tasty/Bow Street Group up regardless of score, and move Honest Burgers and Boparan down regardless of score, a manual override applied honestly, not built into the scoring code as false precision.
Proof
All 36 rows are real, sourced and scored the same way. These are the highest scorers across both markets.
| Company | Market | Score | Tier |
|---|---|---|---|
| MJS Holding | KSA | 100 | Tier 1 |
| Epik Foods | KSA | 100 | Tier 1 |
| Takara Hospitality Group | KSA | 95 | Tier 1 |
| MFC | KSA | 95 | Tier 1 |
| Leylaty Hospitality Group | KSA | 95 | Tier 1 |
| Al Khozama Management Company | KSA | 94 | Tier 1 |
| FBH Group | KSA | 90 | Tier 1 |
| The City Pub Group | UK | 87 | Tier 1 |
| Flat Iron Steak | UK | 87 | Tier 1 |
| Comptoir Group | UK | 87 | Tier 1 |
| Al Hokair Group | KSA | 85 | Tier 1 |
| The Azzurri Group | UK | 79 | Tier 1 |
Full 36-company scored list in companies_scored.csv. Static score only, see the intent-signal section above for the timing layer on top.
System of record & the one hard boundary
This system would, if activated, send real cold outreach to real UK and KSA companies under Supy's name. That's not a call to make without Supy's own authorization.
outbound/reengagement_loop.md
The active sequence fires touch 1 (day 0), touch 2 (day 4), touch 3 (day 8), then stops. This is the real cadence for after that, with a genuine stop condition, not an infinite nurture loop.
7 days after touch 3 with no reply. Status moves from sent to no_response.
21-day cooldown, then a WebSearch for a genuinely new signal, the same method that found Azzurri's and Hickory's real signals. New signal found: one fresh re-engagement touch. Nothing new: status goes to dormant.
A re-engagement touch that gets no reply goes straight to dormant. No second attempt. Permanent suppression protects sender reputation more than a marginal reply rate is worth. Flagged for quarterly manual review only, human-in-the-loop, not an automated re-fire.
Bonus · beyond the brief
The 36 static landing pages already exist, sketchnote-styled, one template. These two go further: real brand colors pulled from the prospect's own site, an interactive procurement-savings model, and the real intent signal each company actually has, not a generic stat block.
Dave's Hot Chicken JV, 180 restaurants across 10 countries, against a real operating loss from launch costs. Real contact: Neil Westley, Head of Purchasing.
$15.5M raised, earmarked for a 20-restaurant Riyadh/Jeddah/Dhahran expansion. Real contact: Khaled Fadly, CEO.
Disclosed on purpose