Skip to content
← All projects

Country Explorer: Location Intelligence for Restaurants

LaunchedApril 14, 20262026

A team of agents reads footfall, road traffic and demographics for every UK region, then writes up where a restaurant chain should open next with the numbers behind each recommendation still attached.

Everything needed to decide exists, in four different geographies

Expansion decisions get made from a map, a list of competitor sites and somebody's read on a city. The data to do better already exists, but it arrives in incompatible shapes: brand footprints, rail footfall, road traffic and demographics each come with their own geography and their own file. So regions get picked because someone in the room knows them, and the reasoning behind a pick has evaporated by the time a board asks why that one.

What the agents do

Two of them, each reading the same data from a different direction.

Expansion Scout
Scores every region on four things: the gap between the brand's own penetration and what the area could hold, who else is already there, population, and how much room is left before density starts working against a new site. The score is not the recommendation. The brief that comes out says which of the four drove it.
Competitor Tracker
Works the footprint data from the other side: which brands hold which regions, how share splits, and what has opened and closed over time. A region with no competitors and no openings in three years is a different proposition from one with no competitors and two closures.

Why the brief carries its sources

Both agents write prose, and every claim in it points back to the data it came from. That is the part of the design worth defending: a recommendation nobody can trace is indistinguishable from a guess, and tracing it is the first thing anyone senior asks for. It is also what makes the agent correctable. When a number looks wrong, you can find out whether the agent misread the data or the data was wrong, and those need different fixes.

Where the judgement stays with people

The agents do not decide anything. A penetration gap can mean a brand has room, or it can mean the brand went in and came out, and the four scores do not tell those apart. So the module puts the interactive maps, the share splits and the opening and closing history next to the written brief rather than behind it, and a person checks the agent's reasoning against the picture before it goes anywhere.

A ranked list is the thing nobody can argue with

Both end at the same meeting this work was meant to fix.

Buy a location-intelligence report
The data vendors sell exactly this, already assembled. What arrives is a snapshot built for a generic question, dated on delivery, with the joins already made by someone who did not know which ones would matter. When the board asks why this region and not the neighbouring one, the report has no answer under it.
Score every region with one model and rank them
A single score is the most decision-shaped output available, and it is the one that cannot be interrogated. A region sits third and nobody in the room can say which input put it there, so the argument reverts to whoever knows the area — the failure the whole project exists to remove.

What it produces

Choropleth maps of brand presence and market share across every UK region; an expansion radar ranking regions on the four dimensions; a time series of openings and closings; a written, sourced brief per recommendation; and PDF export, because the artefact that actually gets circulated is a deck. A public demo is linked at the top of this page, and it is the fastest way to judge any of this without taking our word for it.

What it proves

A team of agents reads location, footfall and demographic data and writes sourced expansion briefs a human can check against the figures behind them.

Category

Data Analytics

Built with

React · TypeScript · Supabase · Interactive Maps · Multi-agent LLM Insights · Data Visualization

Live demo

Open it ↗

Need something similar?

The cheapest way in is two weeks. The first days work out which task would pay for itself in your processes; the rest builds that agent on your own data and measures it.