Search filters let your visitors narrow down locations by category. Think "Drive-Through", "Open 24 Hours", "Organic", or whatever makes sense for your business. They show up as clickable options in your store locator widget, and visitors can pick one or more to find exactly what they need.
Filters are one of the most-used features in StoreRocket, and they only take a few minutes to set up.
Creating filters
Go to Search Filters
Select New filter
Give it a Filter name (this is exactly what your visitors will see, so name it clearly)
Optionally pick a color and add an Icon
Select Create filter
A filter with Visible in the locator switched on appears in the widget even before any locations have it. Keep it switched off while you assign locations, then switch it on when you're ready for visitors to use it.
Assigning filters to locations
Creating a filter is step one. Step two is telling StoreRocket which locations have which filters. You have three ways to do this.
Method 1: In the dashboard
Go to Locations, open a location, find Search filters in the Enrich section, check the filters that apply, and save. Simple, but slow if you have hundreds of locations.
To change many locations at once, tick their rows on the Locations page. A bar appears with the number selected, Clear and Actions. Choose Actions > Change filters, then choose Add or Remove, tick one or more filters, and select Add filters or Remove filters. Select all also includes matching locations on other pages. Untick any rows you want to leave out. Select Cancel to close the menu without changing anything.
Two quick ways to pick many locations:
Search and tick. Your ticks stay when you search again. Search one city, tick its stores, then search the next.
Select from a list. Go to Tools > Select from a list and paste the locations you mean, one per line: StoreRocket IDs, phone numbers, addresses or names. They are ticked for you, ready for Actions.
Add keeps every filter a location already has.
Method 2: CSV import
Use this when you add or update locations from a spreadsheet. When you import locations via CSV, add a column called Filters to your spreadsheet. For each location, list the filter names separated by commas.
This is the #1 thing people get wrong. Read this section carefully.
Name the column Filters. StoreRocket also recognizes Filter. It does not guess other names like Category or Tags. The Import page lists those under To match, where you can choose Filters under Save in StoreRocket as.
Inside each cell, list the filter names separated by commas:
WiFi, Parking, Pet Friendly
A Filters cell replaces that location's filters, so list every filter it should keep. To add one filter to many locations you already have, use Method 1. A file with only StoreRocket IDs and no names can't be imported: the Import page offers to select those locations for you instead.
Here's a full CSV example:
name, address, Filters
Downtown Store, 123 Main St, "WiFi, Parking"
Airport Location, 456 Terminal Blvd, "Open 24h, WiFi"
Suburban Store, 789 Oak Ave, "Parking, Pet Friendly, Drive-Through"
Mall Kiosk, 321 Commerce Dr, "WiFi"
Important details about the Filters column:
Wrap values in quotes if they contain commas (most spreadsheet tools do this automatically on export)
Spelling matters. "Drive-Through" and "Drive Through" are treated as two different filters
If a filter name doesn't exist yet, StoreRocket creates it automatically during import. You don't need to create filters in the dashboard first
Use commas to separate multiple filters, not pipes or semicolons
Updating locations you already have? Export your locations first and keep the StoreRocket ID column in the file you import. Rows without a StoreRocket ID are added as new locations, so importing a short file with only names and filters creates duplicates.
Import your file at Location Data > Import.
Method 3: Google Sheets sync
Same format as CSV. Add a Filters column to your connected spreadsheet, use comma-separated filter names, and StoreRocket will pick them up on the next sync. Set up your Google Sheet at Google Sheets Sync.
When you sync from Google Sheets, the sheet decides every location's filters. A location whose Filters cell is empty has its filters removed at the next sync, so filters ticked in the dashboard are replaced by what the sheet says. Add them in the sheet, or in the system that fills the sheet, instead.
Showing filters on each location
Filters are not only for searching. They can also be shown as labels on each location, which is useful for marking things like "Affiliate", "Certified" or "New" in addition to a location type.
On the result card: go to Store Locator > Customize, open Location details, turn on Filters under Show in the results list, and select Save. Every visible filter assigned to a location then appears on that location's card in the results list. On Starbucks, also turn on Show filter icons in Search & filters, or Show filters as badges under Show in the results list.
When a location is open: filter labels can appear in its map popup or details panel, depending on the theme. Native Modern and Starbucks have a details panel. Hide these labels with Filters under Show when a location is open.
With an icon: upload an icon on the filter, then go to Store Locator > Customize, open Search & filters, and turn on Show filter icons. The icon then appears next to the filter name on cards and details pages too.
Filters that are not visible in the locator are not shown on cards, on the details page, or in the filter menu.
How do I hide the filter labels on my locations?
Go to Store Locator > Customize and open Location details. Each place has its own switch:
Where visitors see the labels | Switch to turn off |
The cards in the results list | Filters under Show in the results list |
The map popup or details panel, where your theme shows them | Filters under Show when a location is open |
Then select Save. The switch hides the labels of every filter, on every page of your locator. Your locations keep their filters, and pre-filtered pages keep working.
Two nearby switches do something else, so leave them on unless you mean it:
Show filters in Search & filters hides the filter controls visitors use to narrow the map, on Native Modern, Modern and Starbucks. It doesn't hide the labels on locations.
Custom fields under Show when a location is open hides your custom fields, like holiday hours.
Don't remove a location from a filter just to hide its label. If one of your pages only shows that filter's locations, the location disappears from that page.
Controlling AND vs OR behavior
When a visitor selects multiple filters, you control what happens. Go to Store Locator > Customize, open Search & filters, and find Match selected filters in the Filters group. You can also choose it on the Search Filters page: select Settings at the top, then When a visitor picks several.
You'll see two options:
"Match all" (AND logic)
This is the default. It's strict. If a visitor selects "Parking" and "WiFi", they'll only see locations that have both Parking AND WiFi. If a location only has Parking, it won't show up.
This works great when your filters are attributes or features. Visitors are saying "I need a location with ALL of these things."
"Match any" (OR logic)
This is more relaxed. If a visitor selects "Organic" and "Drive-Through", they'll see all locations that have Organic, all locations that have Drive-Through, and all locations that have both.
This works great when your filters are categories or brands. Visitors are saying "I'm interested in ANY of these types."
Quick reference
Visitor selects | Match all | Match any |
Parking + WiFi | Only locations with BOTH | Locations with Parking OR WiFi (or both) |
Organic | Same either way | Same either way |
Parking + WiFi + Pet Friendly | Only locations with ALL three | Locations with any of the three |
Getting zero results after selecting filters? You're probably using Match all and no locations have all the selected filters assigned. Either switch to Match any or make sure your locations have the right combinations of filters.
Filters layout: dropdown or row
By default, filters appear behind a Filters button. To show them as a row of chips instead, go to Store Locator > Customize, open Search & filters, and set Filter presentation to Filter chips.
Chips are supported on the Native Modern and Modern themes. On other themes the option does not appear. To hide the visitor filter controls, turn off Show filters in the same place. Location labels have separate switches.
Setting the behavior on one page only
The setting above applies to your whole account. If you only want one page to behave differently, set Filter matching under Only for this page on Store Locator > Install, or add data-storerocket-filter-operator to that page's embed instead:
<div id="storerocket-widget"
data-storerocket-id="YOUR_ACCOUNT_ID"
data-storerocket-filters="organic,drive-through"
data-storerocket-filter-operator="or"></div>
Use or for "any of these" or and for "all of these" (any and all also work). Leave the attribute off and that embed follows your account setting as normal, so adding it to one page changes nothing anywhere else. It works as a URL parameter too: ?filter_operator=or
Pre-filtered embeds (different locations on different pages)
This is powerful. You can make different pages on your website show different subsets of your locations, all from the same StoreRocket project.
The easiest setup is on Store Locator > Install. Choose Selected brands or groups, select the groups for that page, then choose No, only these groups for a fixed boundary or Yes, start with these groups for a selection visitors can clear.
Pre-selecting filters on load
Add data-storerocket-filters to your embed code to load the widget with certain filters already selected:
<div id="storerocket-widget"
data-storerocket-id="YOUR_ACCOUNT_ID"
data-storerocket-filters="drive-through"></div>
The values can be filter slugs or filter IDs. Both work identically.
The slug is the small grey text under each filter's name on your Search Filters page. It is also in the Slug field under Advanced when you open a filter. Copy it exactly, don't guess it. Filters with duplicate names get a number added to stay unique, so you can end up with
organic-2.The ID is the number in the address bar when you open a filter on its own page. Ctrl-click (Windows) or Cmd-click (Mac) the filter's name on the Search Filters page. The address looks like
storerocket.io/app/search-filters/148952. The API ID you see under Advanced when you open a filter is for the REST API. Don't use it here.The filter's display name never works. It has to be the slug or the ID.
Renaming a filter does not change its slug, so pre-filtered pages keep working after a rename. If you change a slug yourself in the Slug field under Advanced, update any page that used the old one.
For multiple filters, separate them with commas: data-storerocket-filters="drive-through,organic" or data-storerocket-filters="42,78,103". You can mix slugs and IDs in the same list.
Careful: with the default Match all behavior, listing several filters shows only the locations that have all of them. Start with one and add from there.
For installed page groups, No, only these groups keeps Search, Clear and Show all inside the page's groups. Yes, start with these groups lets visitors clear the selection and see all locations. A visible filter in a ?filters= URL remains a clearable starting selection. A hidden filter preselected through ?filters= or data-storerocket-filters keeps the legacy behavior and stays applied through Clear and Show all.
The same values work as a URL parameter: ?filters=drive-through. See How to create a pre-filtered store locator.
Limiting which filters appear in the dropdown
If you only want certain filters to be available on a specific page, use data-storerocket-enabled-filters:
<div id="storerocket-widget"
data-storerocket-id="YOUR_ACCOUNT_ID"
data-storerocket-enabled-filters="42,78"></div>
This one is numeric IDs only, slugs are not supported here. Get the IDs the same way as above, from the address bar of each filter's own page.
This hides all other filters from the dropdown. Only filters with IDs 42 and 78 will be visible and selectable. This is different from pre-selecting: it removes the other filters from the visitor's filter choices on that page.
Using both together
You can combine them. This loads the widget with filter 42 already selected, and only filters 42 and 78 available in the dropdown:
<div id="storerocket-widget"
data-storerocket-id="YOUR_ACCOUNT_ID"
data-storerocket-filters="42"
data-storerocket-enabled-filters="42,78"></div>
Example use cases
Product pages: Show only stores that carry a specific product line
Regional pages: Show only stores in a specific region or territory
Partner pages: Show only authorized dealers or premium locations
Brand pages: Show only locations that carry a specific brand
Get your base embed code from the Install page and add these attributes to it.
Renaming the "Filters" label
Don't want your widget to say "Filters"? No problem. Go to Languages, open your language, and in the Filters group change the text called Filters. "Brands", "Categories", "Services", "Store Type", whatever fits your business.
The change shows up on your live widget within a minute.
Hiding a filter from the widget
Want to keep a filter for internal organization but hide it from visitors? Open the filter on the Search Filters page and switch Visible in the locator off. You can also use the switch in the filter's row.
To hide, show or delete several filters at once, tick them on the Search Filters page and choose Actions. Select all also includes filters on other pages.
Hidden filters still work with pre-filtered embeds (using data-storerocket-filters or ?filters=), by slug or by ID. They just won't show up as options visitors can click on. Hiding a filter without preselecting it only controls whether visitors can see and select it. A hidden filter that is also preselected remains applied through Clear and Show all. For new fixed pages, use No, only these groups on Store Locator > Install.
Adding icons to filters
You can replace the default colored dots with custom icons. Open any filter on the Search Filters page and add an Icon. Accepted formats are PNG, JPG, WebP, or SVG, up to 2 MB.
To show the icons in your widget (instead of colored dots), go to Store Locator > Customize, open Search & filters, and turn on Show filter icons. You can also turn on Icons instead of colors under Settings on the Search Filters page.
Troubleshooting
Filters not showing in the widget
Check that Visible in the locator is switched on for the filter on your Search Filters page. A filter can appear with zero locations assigned. Assignments control which results visitors see after selecting it.
Keep unfinished filters hidden until their location assignments are ready.
Widget showing old or deleted filters
Browser cache. Try a hard refresh (Ctrl+Shift+R on Windows, Cmd+Shift+R on Mac). If your website uses a CDN or caching plugin, clear that cache too. Give it a minute or two.
Imported filters but they're not assigned to locations
Check your CSV column header. It should be Filters (or Filter). If you used another name, such as Category, choose Filters for that column on the Import page, under To match.
Also make sure the filter names in your CSV cells match exactly what's in your StoreRocket account (or they'll be created as new, separate filters).
Filter created but no locations show under it
A visible filter can appear in the widget even with no locations assigned. Selecting it alone then returns no locations. Assign it through the dashboard, CSV import, or Google Sheets, or keep it hidden until those assignments are ready.
Zero results when selecting multiple filters
You're using Match all (the default). No locations in the visible area have ALL the selected filters. Either switch to Match any in Store Locator > Customize, or make sure your locations actually have the right filter combinations.
Pre-filtered embed not working
The two attributes behave differently. data-storerocket-filters accepts filter slugs or numeric IDs. Both work. data-storerocket-enabled-filters accepts numeric IDs only, not slugs. Slugs are the small grey text under each filter name on your Search Filters page. IDs are the number in the address bar when you open a filter on its own page.
Questions about filters? Message us on live chat.