Location scouting workbench for picking your next site

Type in a candidate address and get a scorecard of nearby competitors, foot traffic anchors, and drive time from every site you already run.

App
GeolocationGoogle SheetsSlack BotOperationsResearch & MonitoringAI Reports
PromptCreate

Build me a location scouting workbench I open when we are deciding where to open our next site. It has three screens: Scout, Shortlist comparison, and Settings.

The Scout screen is where I start. I type a candidate address, optionally adjust the search radius and the cannibalization drive time threshold from their configured defaults, and hit Scout. The handler pins the address with the Geolocation Forward Geocode operation, then calls Search Nearby Places twice around those coordinates: once for the business types configured as competitors, and once for the anchor types that generate foot traffic such as grocery stores, gyms, coffee shops and big box retail. Take the most relevant results from each search, capped at about ten competitors and ten anchors, and call Get Place Details on those to fill in rating, review count, opening hours and formatted address.

In the same handler run, read the locations we already operate from a Google Sheets tab with Get Values, where each row has a site name and address. Then call Calculate Distance Matrix with the candidate as the origin and those existing sites as destinations to get driving time and distance to each one. Cap the destination list at roughly twenty five sites, nearest by straight line first, because Distance Matrix bills per element (origins times destinations) and an unbounded list gets expensive fast for a chain with a lot of locations.

The result renders as a scorecard for that candidate: how many competitors sit inside the radius and how that compares to the shortlist average, the average competitor rating and total review volume I would be up against, a list of nearby anchors with their distance and rating, and the closest existing location by drive time. When that closest existing location is inside the cannibalization threshold, show a prominent warning naming the site and the drive time. Show the underlying competitor and anchor lists in expandable tables so I can look at the actual businesses, not just the summary numbers.

Saving a candidate appends it to the shortlist tab with Google Sheets Append Values. Write both the computed scores and the fetched place results into that row, including a column holding the raw competitor and anchor payload, so the app can rebuild the full scorecard from the sheet alone. This matters for cost: Nearby Search runs about four cents per request and Place Details about two cents each, so place data must be fetched exactly once per candidate at scout time and never re-queried on a view render. Add an explicit Rescout button on a saved candidate for when I deliberately want fresh data, and show when the cached data was captured.

The Shortlist comparison screen reads the shortlist tab with Get Values and puts every saved site side by side in one table: address, competitor count, average competitor rating, anchor count, drive time to the nearest existing location, cannibalization flag, and the agent recommendation once it exists. Make the columns sortable, highlight the best and worst value in each numeric column, and let me click a row to open its saved scorecard. Nothing on this screen may trigger a new maps call, it reads entirely from the sheet.

Each shortlisted site gets a "Deep scout this site" button that kicks off a background agent. The agent takes that row, researches the surrounding trade area in depth (it can use Search Places by Text and Get Place Details for additional context such as traffic generators, complementary categories and the quality of the local competition, plus general web research on the neighbourhood), reads the rest of the shortlist from the sheet so it can weigh this site against the alternatives rather than judging it in isolation, and produces a written recommendation with its reasoning and a clear verdict of pursue, hold or pass. It writes the recommendation, reasoning and verdict back into that shortlist row with Google Sheets Update Values, and posts the brief to our expansion channel with Slack Bot Send a Message, leading with the address and verdict so the channel can skim it.

The app should show a pending state on the row while the agent is running, and surface the verdict and recommendation in both the scorecard and the comparison table once it lands. The Settings screen holds the spreadsheet id, the existing locations tab and shortlist tab names, the competitor and anchor business type lists, the default search radius, the cannibalization drive time threshold, and the Slack channel for briefs.

What does this prompt do?

  • Pins any candidate address on the map and pulls the competitors and complementary businesses sitting within a radius you choose
  • Scores the site on competitor density, the average rating you would be competing against, and the anchor businesses nearby that pull in foot traffic
  • Warns you when a candidate sits too close to a location you already operate, measured in real drive time rather than straight line distance
  • Saves every site you scout to a shortlist in Google Sheets and lines them all up side by side, so you compare options instead of judging one address at a time
  • Gives you a Deep scout button that sends a research agent to study the trade area, write a recommendation into the shortlist row, and post the brief to your expansion channel in Slack

What do I need to use this?

  • A Google account with a spreadsheet holding the locations you already operate, one per row, plus a tab for the shortlist
  • A Slack workspace and the channel where expansion decisions get discussed
  • A rough idea of which business types count as competitors and which count as foot traffic anchors for your format
  • Nothing to set up for the mapping and place data, that comes built in and is billed as usage

How can I customize it?

  • Change the search radius and the business types treated as competitors versus anchors to match your format
  • Set the drive time that triggers the cannibalization warning, tighter for dense cities and looser for suburban sites
  • Point the app at different spreadsheet tabs and pick which Slack channel receives the deep scout briefs

FAQs

Do I need my own Google Maps account?
No. The mapping, place search and drive time data is built into the platform and billed as usage, so there is no separate Maps account or billing setup on your side.
How much does it cost to scout one address?
Place searches are the expensive part, roughly four cents per nearby search and about two cents per business detail lookup, so a full scorecard for one candidate usually lands in the range of a few tens of cents. The app fetches everything once and stores the results on the shortlist row, so opening or comparing a site you already scouted costs nothing extra.
Can I come back to sites I scouted weeks ago?
Yes. The shortlist lives in your Google Sheet, so every candidate you save stays there with its scores intact and shows up in the comparison view whenever you reopen the app.
What counts as a competitor?
You decide. You configure which business types are competitors and which are anchors that bring foot traffic, so a coffee chain and a gym operator get very different scorecards from the same address.
Is the cannibalization warning based on distance or drive time?
Drive time. The app measures actual driving time and distance from the candidate to each of your existing locations, which is a much better read on overlap than a straight line radius, especially where rivers, highways or one way systems get in the way.

Related templates

Cut your GetResponse bill by pruning contacts who never open

Sort every GetResponse list by how recently people engaged, see which billing tier you are in, and safely tag, segment, or remove the dead weight.

GetResponse
Google Sheets
App
Newsletter send desk for drafts you write in Google Docs

Move every draft from Drive to your email list in one screen: pick the audience, see the real recipient count, and send without fixing formatting by hand.

GetResponse
Google Drive
Google Docs
+1
App
Track every laptop, license and who has it right now

One register for every piece of equipment and every software seat, with a dated record of who had what, so nothing depends on a shared spreadsheet again.

General Input Database
Slack Bot
Google Sheets
App
GitLab repo standards board with one-click fix merge requests

See which GitLab projects have the files and settings your team agreed on, and turn every gap into a merge request someone reviews.

GitLab
Slack Bot
App
Search what customers actually say across your Gong calls

One screen where sales, success, and marketing can search every call transcript by keyword, watch mention trends, and share AI summaries to Slack.

Gong
Slack Bot
App
A weekly 1:1 coaching board built on Gong scorecard trends

See every rep's scorecard average, call stats and direction of travel on one screen, then prep the 1:1 with a brief you can send them.

Gong
Slack
Google Sheets
App

Stop picking your next location off a hunch.

Scout, score and compare candidate sites in one place, with a shortlist your whole team can return to across a long decision.