Retail & Distribution · Fallstudie
The zone where orders pile up but no store reaches within 15 minutes shows up on the map
Was dabei herauskommtTurn the stores, customers, and competitors that were only addresses into coordinates on a map, overlay each store's 15-minute reach with the order hotspots to find the trade areas no store reaches, then click that zone to trace back to the customers behind the orders.
Monday morning, the site-planning meeting. Three spreadsheets are open in front of a retail company's strategist. The store list, a year of customer orders, the competitor map. All three have the address column filled in and the coordinate column blank. Today's question is a single one: where should the next store go. Staring at rows of addresses, there's no way to see which neighborhoods are empty.
Let's say it up front. The company and the numbers in this piece are not a real customer case; they're an example and a hypothetical scenario built on synthetic data to show what the map canvas is for. Read it as a record of experimenting, on fake data, with "if it were this kind of work, couldn't it be solved like this?" The pain, though, is not hypothetical. Stores, customers, and competitors exist in the data only as addresses, and questions asked by location don't resolve until you turn those addresses into coordinates and put them on a map. And that conversion, people usually do by hand.
Three spreadsheets: the address column full, the coordinate column blank
This company's data is already well organized. Stores and customers, orders and competitors sit as connected entities inside the workspace knowledge graph. Which customer bought how much from which store, which competitor sits in which trade area — all of it tied together by relationships. Just one thing is missing: where each of those places actually is on a map. The coordinates.
- One store-list spreadsheet. The address column is filled in and the coordinate column is blank
- One spreadsheet of a year of customer orders. It holds which customer bought how much from which store
- One competitor spreadsheet. It records which competitor sits in which trade area
- The stores, customers, orders, and competitors in those three sheets already sit as connected entities in the knowledge graph. There's no new data to gather
- There are hundreds of addresses to put on the map. All of them address strings, not one coordinate
Without coordinates, questions asked by location stall. "Which neighborhood has the most orders with no store of ours within 2 km?" "How far does each store reach in 15 minutes, and where are the holes between those reaches?" The answers to these aren't written in any single row.
Drop pins one by one, estimate by straight-line distance
The old way was simple but grueling. Paste each address into a map service one at a time, drop a pin, screenshot the screen, and paste the image into the deck. Move hundreds of addresses like that and time melts away — and one typo lands a pin in the wrong neighborhood entirely.
Distance was a guess, too. People judged "near" and "far" by the straight line between two points, but real people don't move in straight lines. If there's a river to cross or a main road to go around, two kilometers as the crow flies is a long drive. The moment you draw reach as a straight-line circle, the coverage judgment is already off.
The most frustrating part is that a map made this way is cut off from the data. Click a pin in the screenshot and you can't get back to who that customer is or which order it came from. The map ended as an image pasted into the deck, and you couldn't ask it anything more.
Don't draw it — ask for the map in chat
Setup isn't gathering new data; it's giving coordinates to the places already in the graph. There's no map button or sidebar icon anywhere in the app. A map only exists once the agent draws it during a chat turn.
How addresses get onto a map
Ask a spatial question in chat
"Put our stores and the last year of orders on a map." The agent reads the store, customer, and competitor entities in the knowledge graph and takes their addresses as the work to do.
A "Geocoding places" card turns addresses into coordinates
Geocoding is turning addresses into coordinates. There's one rule here: the model does not invent coordinates. Spatial computation — geocoding, distance, reachability — is all handled by deterministic services and libraries, and an address too ambiguous to resolve confidently is flagged as such rather than guessed.
An "Authored map" card appears with the map inline right below it
The agent picks the layers that fit and authors the map. Where orders cluster, a heatmap surfaces the hotspots; sales by area roll points up into districts shaded as a choropleth (regions colored by a value). The color is painted from a normalized rate, not a raw count — to stop a bigger neighborhood from always looking "hotter" by sheer size.
Ask it to overlay each store's 15-minute reach
It draws the isochrone from each store — a travel-time reach polygon computed on the real road network — for everywhere you can get to within 15 minutes. Overlay that reach on the order hotspots and it shows where orders pile up that fall inside none of them.
Open a full-screen tab with "View large"
The chat tucks into the left sidebar, so you keep asking while you look. The legend is full-screen only, so the choropleth ranges and layer colors lay out here.
Ask on the map, trace back through the graph
"How far does each store reach in 15 minutes, and where are the holes between those reaches?"
→ Each store's 15-minute reach is drawn, with the order hotspots overlaid on top.
Zones remain where the hotspot is clear but no store's reach covers it.
Empty trade areas: demand exists, but we don't reach it.
"Which neighborhood has the most orders with no store of ours within 2 km?"
→ A zone rows could never show surfaces as one spot on the map.
Click that zone and a "Selected: {label}" pill appears,
and if the mark is tied to an entity, a "View in graph" button comes with it.
One click and you cross straight to which customers those orders came from.
"Which competitors are within 2 km of this candidate site?"
→ The answer comes right there, with no re-pinning.
A place put on the map remembers its coordinates back in the graph.The reason this answers is a question of who does the computing. The model decides what to draw; deterministic services and libraries compute the coordinates and the reach. So an empty zone on the map is not a spot the model guessed at — it's what fell out of real travel times. In a meeting choosing where to open next, that zone goes on the candidate list with its evidence.
Here the map doesn't end as a picture. Click a mark and an @mention chip drops into the chat composer, and your next message carries that feature's properties and coordinates along with it. You never have to describe which dot you meant. You find the "where" on the map and follow it to the "who and what" in the graph. Computed results like hexbin cells and isochrones, though, have no entity behind them, so no "View in graph" button is attached.
What changes
| Before | Now |
|---|---|
| Paste each address into a map service one at a time, drop a pin, screenshot the screen. Move hundreds and one typo lands a pin in the wrong neighborhood | The agent turns the addresses of the stores, customers, and competitors already in the graph into coordinates all at once and puts them on a map. An address it can't resolve confidently is flagged, not guessed |
| Estimate reach with a straight-line-distance circle. The river crossing and the main-road detour aren't in the math | Draw each store's 15-minute reach from real travel time, and see where the orders that fall inside none of them pile up |
| Click a pin in the screenshot and you can't get back to who that customer is or which order it came from | Click a mark and the "Selected" pill carries a "View in graph" button — one click and you cross to that entity |
| Re-pin the addresses from scratch every time the next spatial question comes up | A place put on the map remembers its coordinates in the graph, so "which competitors are within 2 km of this candidate site?" is answered with no re-pinning |
Before, you scanned rows of addresses by eye and guessed "probably around here," dropping pins by hand and measuring distance in straight lines. Now the reach and the hotspots are computed on the map, and the person looks at that result and judges where to open.