A store locator is one of the highest-converting features you can add to a retail or franchise website — customers who find your nearest location are customers who show up. You don't need a developer to build one, and you don't need to keep the data anywhere more complicated than a spreadsheet. Here's the whole process.
What makes a good store locator
The best locators do three things well:
- Find — visitors search your locations by keyword, tap Near Me to sort the closest ones first, or type a town or postcode to find the ones nearest to it.
- Filter — they narrow by category or service.
- Detail — each result shows the address, contact info, and a link.
Most bad locators fail on the second and third. A map of unlabeled dots is not a finder; it's a decoration. The work below is mostly about making the sidebar list genuinely useful, because finding is a list task at least as much as it's a map task.
Step 1: Put your locations in a spreadsheet
Create a Google Sheet with one row per location. You need latitude and longitude columns — Mapji plots coordinates and doesn't convert street addresses for you, so geocode your list first if you only have addresses. Keep the address as its own column too: it's useful in result panels, and the keyword search matches against it.
Then add a column for every attribute you might want to filter or display:
- Category — the thing people narrow by. Store type, service offered, brand, region.
- Phone, email, website — these get special treatment later, so give each its own column rather than mashing them into one "contact" field.
- Opening hours — one column holding the whole week.
- Anything else worth showing: parking, accessibility, store manager.
It's much cheaper to include a column now than to re-import later, so bring everything along even if you're unsure.
Step 2: Create the store locator
In Mapji, start a new site and choose the Store Locator map type. Connect your Google Sheet as the data source. Mapji auto-detects the coordinate columns, and from then on the sheet is the source of truth — the connection is read-only, so nothing Mapji does can alter your spreadsheet.
The sheet is re-checked every few minutes, so adding a store is a matter of adding a row. There's also a Sync Now button when you don't want to wait.
No sheet? For a handful of locations you can skip it and add them in the editor's Locations tab instead: choose Add location, then click the map or type the address to drop the pin there, and fill in the form. That box places the one pin you're adding — it doesn't read addresses out of a sheet or a file.
Step 3: Configure search and filters
This is the step that separates a useful locator from a map of dots, and it takes about five minutes.
- Search. The sidebar search matches a visitor's typed words against every field on every location. It's a keyword match, not an address lookup, so include the address column — people type a street or suburb name, and it only finds what's written in your data.
- Town or postcode search. Turn it on and a visitor who types a place your data doesn't mention — the town they live in, their postcode — can press Enter to sort the list by distance from it instead. Only that one typed place is looked up, near your locations, and it isn't stored; your own data is never geocoded, so it still needs its coordinates.
- Filters. Tick the columns to filter by and Mapji reads their values: a column becomes a single-choice filter, a multiple-choice one, or a numeric range. Both choice kinds show as toggle pills. Single choice suits one-of-many attributes like store type; multiple choice suits "services offered", where a location can have several.
- Near Me. Sorts results by distance from the visitor's browser location and shows the distance on every card. This is the single feature most people expect and most locators skip. Distances can read in kilometres or miles, and a distance filter lets visitors keep only the locations within, say, 10 km.
- Per-category marker icons. Give each filter option its own pin icon and the map becomes readable before anyone touches the sidebar — you can see at a glance that the clinics are here and the pharmacies are there.
Step 4: Set up the result panels
Each location can show up to five extra display fields beyond the title and description, and each one is typed: text, phone, email, or URL. The typing matters more than it sounds — a phone field dials when tapped on mobile, an email field opens a mail client, and a URL becomes a real link. That's the difference between a visitor calling you from the map and a visitor copying a number by hand.
Pick fewer fields than you're tempted to. Address, phone, and one differentiator is usually the right amount for a list you're scanning.
Under Details & sharing you can go further. Quick actions put Call, Website and Email buttons under the title of the detail panel. Copy link gives each location a link that opens the map on it, ready to paste into an email or a chat. And any column only your team should see — a manager's mobile, an internal code — can be hidden: it is removed before the page is sent, not just left off the panel.
To push a flagship store or a new opening, pick a Featured column. Any row marked yes (or true, 1, x, ✓) gets an accent edge, a Featured badge and a slightly larger marker, and can be pinned to the top of the list. Without a sheet, a star beside each location in the editor fills the column in for you.
Step 5: Add opening hours
Add a working-hours column and each card gains a live status line, with the next change — "Open · Closes 17:00" — and visitors get an Open now filter. Every location also carries a Directions button that opens Google Maps (Apple Maps on an iPhone or iPad). For a locator, this answers the question visitors are actually asking, which is rarely "where are your stores" and almost always "which one can I go to right now".
The format accepts most ways people write hours, including times past midnight, and the badge can follow the store's own time zone. Opening hours and open-now badges covers the details.
Step 6: Make it look like yours
A locator sits inside your website, so it should look like part of it. The Appearance card starts you from a Light, Dark, Brand or Minimal theme, then lets you set each colour, the font, the title size and the card style. The Layout card adds a header with your logo, title and subtitle, puts the panel on the left or right at the width you want, and decides what each card shows. Under Markers, choose how pins are drawn — the bare icon, the icon on a badge, a dot, or a pin with the icon inside — the cluster colour, and whether a legend of your categories sits on the map.
Check the phone view before you publish. On a phone the list becomes a drawer under the map, and Phone preview in the Layout card shows it without changing anything.
Step 7: Embed it on your site
Publish to a custom domain or embed the locator on your existing website with a single iframe snippet. It stays connected to your sheet, so updates never require touching the website again.
One embed setting matters especially here: if the locator sits partway down a long page, turn off scroll zoom so visitors scrolling past don't get trapped zooming the map. Embedding an interactive map covers the rest, including the height problem every iframe has.
Keep it maintainable
Because the data lives in a spreadsheet, anyone on your team can add or edit locations without code, a CMS, or a Mapji login — they only need edit access to the sheet. That's the whole point: set it up once, then manage it like any other sheet.
It matters most for opening hours, which rot faster than anything else in a locator. Bank holidays and a branch quietly changing its Saturday close are what make an "Open now" badge wrong, and a confidently wrong badge is worse than no badge. If a branch manager can fix their own row, it gets fixed.