The quickest way to add a store locator to Magento (Adobe Commerce) is one embed code: create your locator, copy the code from the Install page and paste it into a CMS page in HTML mode. It adds no module, PHP or database queries to Magento. Keeping it working takes three things: a Content Security Policy entry on Magento 2.4 and later, a cache flush after you publish, and location edits made in the StoreRocket dashboard.
This guide compares the extension, embed and custom routes, then gives the complete steps. The methods work the same on Magento Open Source, Adobe Commerce and Adobe Commerce Cloud. We make StoreRocket, so weigh our view with that in mind.
Related: What is a store locator? | Best store locator software 2026 | Store locator examples
The short answer
A free map or app is enough when
- You have a short list of stores that rarely changes.
- Visitors only need to see where you are, not search by address or filter by service.
- A Marketplace extension that keeps locations in your own Magento database already covers what you need.
- Your team is happy to retest the extension on every Magento upgrade.
Use StoreRocket when
- You have stores, dealers or distributors and the people who update them cannot edit Magento.
- You want the locator kept outside your Magento codebase, so an upgrade does not touch it.
- You want search, filters, opening hours and a phone layout that already work, styled to match your theme.
- You may run several brands or storeviews and want one place to manage the locations.
Only a few locations and no budget? You may not need a store locator at all. A free embedded map with a pin for each location is fine when the list is short, rarely changes and visitors only need to see where you are. Our guide to free store locator options compares them.
Magento 2 vs Adobe Commerce: what you need to know
Magento Open Source (formerly Magento Community Edition) is the free, self-hosted version of the platform.
Adobe Commerce (formerly Magento Commerce / Magento Enterprise) is the paid version managed by Adobe. It includes everything in Magento Open Source plus B2B features, staging environments and advanced segmentation.
Adobe Commerce Cloud is the managed, cloud-hosted version of Adobe Commerce.
All three support the same extension and embed approaches. Throughout this guide, "Magento" means all variants unless a distinction matters.
Why Magento stores need location finders
Magento merchants often operate both online and offline, and many have dealer or distributor networks, service centers and warehouses with different customer-facing roles. A store locator lets an online shopper find the nearest physical location, and gives your dealers a way to be found. For omnichannel retailers and manufacturers, it is a practical piece of the sales infrastructure.
Your options for Magento store locators
There are three approaches to adding a store locator to Magento 2 or Adobe Commerce. Each has trade-offs depending on your technical resources, budget and long-term maintenance.
Option 1: Magento Marketplace extensions
How it works: Install a store locator extension from the Adobe Commerce Marketplace (formerly Magento Marketplace). The extension adds a module to your Magento installation with admin configuration, database tables, and frontend rendering.
Pros:
- Native Magento integration, managed within the admin panel
- Location data lives in your Magento database
- Some extensions offer basic inventory integration with Magento's MSI (Multi-Source Inventory)
- A license or subscription paid to the extension vendor
Magento Store Locator Extension Example
Amasty Store Locator offers Google Maps integration, location pages, import/export, and configurable search radius. The published Store Locator extension costs $199 for the first year as an annual subscription. Renewals cost 60% of the original price, currently $119.40/year.
Option 2: Embedded SaaS solution (recommended)
How it works: Use a dedicated store locator platform like StoreRocket and embed it on a Magento CMS page using a small snippet of code. The locator runs outside your Magento backend, so it adds no PHP code or database queries to Magento.
Pros:
- Analytics and lead capture, depending on the plan
- No StoreRocket PHP code or database queries inside Magento
- Platform independent: if you migrate from Magento to Shopify or any other platform, your store locator moves with you
- Daily Google Sheets sync (plan-dependent)
Trade-offs:
- A monthly or yearly plan (current plans), against an extension you retest on every Magento upgrade
- A separate dashboard, bridged by Google Sheets sync, which is also how staff update locations without Magento admin access
- Showing availability per store means keeping a custom field up to date, from a sheet or through the REST API (plan-dependent)
Example: StoreRocket is built for retail, dealer, and distributor locators.
Option 3: Custom development
How it works: Your development team builds a custom store locator module as a Magento 2 module with its own controllers, models, admin UI, and frontend templates.
Pros:
- Complete control over functionality and design
- Deep integration with Magento's inventory, customer, and order systems
- Can connect directly to ERP, CRM, and warehouse management systems
- No external dependencies or subscriptions
Cons:
- Ongoing maintenance: every Magento upgrade requires testing and potentially updating your module
- Performance optimization falls to your team
- Map API management (Google Maps or Mapbox billing, quota monitoring) becomes your responsibility
Best for: Large enterprises with unique requirements that no existing solution can meet, and a dedicated development team to maintain the module long-term.
A custom build needs a map provider and key, address search with suggestions, a geocoded location list with an admin screen, a phone layout, and someone to fix it when Magento or the map library changes. Our guide to building a store locator with AI lists the parts and the checks.
Adding StoreRocket to Magento: step-by-step guide
Here is how to add StoreRocket to a Magento CMS page.
Step 1: Create Your StoreRocket Account
- Visit storerocket.io/get-started
- Sign up with your email
- Access your dashboard immediately
- Start with a free trial, no credit card needed
Try analytics, lead capture and Google Sheets sync on your own locations during the trial.
Step 2: Add Your Locations
StoreRocket offers three ways to get your location data in, and you can combine them.
Manual entry (best for small networks):
- Go to Locations > Add Location
- Enter store details: name, full address, phone number, website URL
- Add weekly opening hours
- Add any custom fields (product lines, certifications, etc.)
- Save. StoreRocket geocodes the address automatically.
CSV import (best for bulk uploads):
- Export your current store list to CSV from whatever system you use today
- Go to Locations > Import
- Upload your file and use the column mapper to match your headers to StoreRocket fields
- Review what will change before you publish, check the addresses and confirm
- Imports place each address on the map for you
Google Sheets sync (best for ongoing management):
- Open Google Sheets Sync in StoreRocket and create a new linked spreadsheet
- StoreRocket exports your current locations and emails you the spreadsheet link
- Add or edit locations in the linked spreadsheet using its template columns
- Enable automatic daily sync, or click Sync from Sheets after editing
To bring in an existing spreadsheet, import its CSV or Excel export first. Continuous sync uses the spreadsheet created by StoreRocket. Follow the Google Sheets setup guide.
With Google Sheets sync (plan-dependent), your Magento store locator updates after the daily sync. Distributors or regional managers can update their own store information in the sheet without Magento admin access.
Step 3: Configure Your Widget
- Open Widget Studio
- Pick a locator style
- Set your brand colour to match your Magento theme
- Configure search behavior:
- Map provider: Google Maps or Mapbox
- Search radius: Set default and maximum search distances
- Distance units: Miles or kilometers
- Language: Edit the words the locator shows to match your store. Showing it in each visitor's own language depends on the plan (see pricing)
- Use my location: Let visitors find nearby results from their own location
Step 4: Set Up Filters
Help customers narrow down locations to find exactly what they need:
- Go to Filters
- Create relevant filter groups that match how your customers think:
- Store type: Retail, Outlet, Service Center, Flagship
- Services offered: Returns, Repairs, Consultations, Installation
- Products available: Full line, Specific categories, Clearance
- Dealer tier: Authorized, Premium, Certified (for B2B networks)
- Assign filters to each location
Step 5: Get Your Embed Code
- Go to Install
- Copy the embed code shown for your account. It is a short block: a
storerocket-widgetelement plus a script that loads the locator from cdn.storerocket.io. Paste it exactly as copied, without editing it.
Step 6: Add to Magento
There are three methods depending on your comfort level with Magento's admin and your theme setup.
Method A: CMS Page (Easiest)
This is the most straightforward approach and works for any Magento 2 installation.
- Log into your Magento Admin panel
- Navigate to Content > Elements > Pages
- Click Add New Page (or edit an existing "Store Locator" page)
- Set the page title to "Store Locator" or "Find a Store"
- Under Content, open the WYSIWYG editor and click the Show/Hide Editor button to switch to HTML mode
- Paste your StoreRocket embed code
- Under Search Engine Optimization, set:
- URL Key:
store-locator - Meta Title:
Find a Store | [Your Brand] Store Locator - Meta Description:
Find [Brand] stores near you. Search locations by city or zip code.
- URL Key:
- Under Design, select your page layout (1 column recommended for full-width locator display)
- Save the page and flush cache:
bin/magento cache:flush
Method B: CMS Block (Reusable)
CMS Blocks let you embed the store locator on multiple pages or within other CMS content.
- Navigate to Content > Elements > Blocks
- Click Add New Block
- Set the block title to "Store Locator Widget" and the identifier to
store_locator_widget - Paste the StoreRocket embed code in the content area (HTML mode)
- Save the block
- Insert the block on any CMS page or within other blocks using:
1{{block id="store_locator_widget"}}
This approach is useful if you want the store locator to appear in multiple contexts, like a dedicated page and also within a footer section or support page.
Method C: Layout XML (For Developers)
For Magento developers who want to add the store locator via theme or module layout updates, you can reference the CMS block through layout XML.
First, create the CMS block as described in Method B. Then, in your theme's layout file (e.g., store_locator_index_index.xml) or a custom module:
1<?xml version="1.0"?>
2<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3 xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd"
4 layout="1column">
5 <body>
6 <referenceContainer name="content">
7 <block class="Magento\Cms\Block\Block" name="store.locator">
8 <arguments>
9 <argument name="block_id" xsi:type="string">store_locator_widget</argument>
10 </arguments>
11 </block>
12 </referenceContainer>
13 </body>
14</page>
Alternatively, you can add the embed code directly in a PHTML template if you prefer not to use a CMS block:
1<!-- app/design/frontend/[Vendor]/[Theme]/templates/store-locator.phtml -->
2<div class="store-locator-container">
3 <!-- paste the embed code from the Install page here -->
4</div>
Step 7: Add to Navigation
Make your store locator easy for customers to find:
- Navigate to Content > Elements > Menu (or your theme's menu management system)
- Add a new menu item with the label "Find a Store" or "Store Locator"
- Set the link to your store locator CMS page URL
- Position it in your header navigation, footer, or both
- Save and clear cache:
bin/magento cache:flush
For themes that use Magento's category-based navigation, you may need to add the link through your theme's header template file instead.
Step 8: Configure Content Security Policy (Magento 2.4+)
Magento 2.4 and later send Content Security Policy headers, report-only on most pages by default. If your store enforces them, allow StoreRocket's CDN and your map provider's domains. If something is still blocked, the browser console names the host to add.
Add StoreRocket to your CSP whitelist by creating or editing etc/csp_whitelist.xml in a custom module:
1<?xml version="1.0"?>
2<csp_whitelist xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3 xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Csp:etc/csp_whitelist.xsd">
4 <policies>
5 <policy id="script-src">
6 <values>
7 <value id="storerocket_cdn" type="host">cdn.storerocket.io</value>
8 <value id="google_maps" type="host">maps.googleapis.com</value>
9 <value id="mapbox_api" type="host">api.mapbox.com</value>
10 </values>
11 </policy>
12 <policy id="connect-src">
13 <values>
14 <value id="storerocket_api" type="host">*.storerocket.io</value>
15 <value id="google_maps_connect" type="host">maps.googleapis.com</value>
16 <value id="mapbox_connect" type="host">*.mapbox.com</value>
17 </values>
18 </policy>
19 <policy id="frame-src">
20 <values>
21 <value id="storerocket_frame" type="host">*.storerocket.io</value>
22 </values>
23 </policy>
24 </policies>
25</csp_whitelist>
Run bin/magento setup:upgrade and bin/magento cache:flush after adding the CSP configuration.
Magento-specific performance considerations
Measure the store locator with your production theme, extensions, cache, and hosting configuration. Check whether the chosen implementation loads scripts globally, makes server-side queries, or runs only on the locator page.
What a SaaS embed like StoreRocket adds:
- One locator element, the script, and its initialization call
- No database queries on your Magento server
- Loads only on the page where the embed code exists
- Locator processing happens on StoreRocket's servers
Full page cache compatibility
Magento's full page cache (Varnish, built-in FPC, Fastly, or CloudFlare) matters for performance, and the embed code is static HTML. StoreRocket adds no server-side work to Magento's cached page.
Multi-store and multi-website support
Magento's multi-store architecture lets you run multiple storeviews (languages, currencies) and multiple websites from a single installation. With StoreRocket you have two approaches:
Approach 1: Separate projects per brand/region. Create a different StoreRocket project for each website or brand. Each gets its own embed code, its own locations, and its own analytics. Best for multi-brand retailers where each brand has completely different store networks.
Approach 2: Single project with filters. Use one StoreRocket project with all locations, and use filters to segment by brand, region, or storeview. An embed attribute or URL parameter can open the locator already filtered on a given page. Best for single-brand retailers with multiple storeviews.
Showing availability
A store locator does not track live stock, so describe availability in a way you can keep current:
Option 1: Google Sheets. Update availability per location in your synced Google Sheet. Simple for stores where it changes weekly rather than hourly.
Option 2: Custom fields. Use custom fields to indicate availability categories per location, for example "Full product line", "Select items only", "Online returns accepted".
Option 3: REST API. Depending on the plan, your own software can update custom field values through the REST API. This needs custom development on the Magento side.
Migrating your store locator from Magento 1 to Magento 2
Magento 1 reached end of life in June 2020. If you are migrating to Magento 2 or Adobe Commerce, your store locator needs to come along.
If your Magento 1 store locator uses an extension, check whether its vendor publishes a Magento 2 migration path. Otherwise, export the location data and evaluate a Magento 2 extension or an embedded platform.
StoreRocket is platform-independent, so your location data, analytics history, filters, custom fields and configuration stay in the StoreRocket project. The same project can be embedded on the replacement site. The embed code works the same in cloud-hosted environments, with no Composer packages to install and no module compatibility to verify.
Enterprise and B2B on Adobe Commerce
Dealer and distributor locators
Adobe Commerce B2B merchants often need a dealer locator. In StoreRocket:
- Dealer tiers: Use filters (for example Authorized, Premium, Certified), and on plans with location types, show priority dealers first (see pricing)
- Custom fields for B2B data: Product lines carried, certifications held, service capabilities, minimum order quantities
- Lead capture: Depending on the plan, when a search finds no nearby location, the locator can ask for the visitor's details
Multi-brand portfolios
- Separate locators per brand: A different StoreRocket project per brand, each with its own locations, branding, and analytics
- Unified locator with brand filtering: One project with brand filters, so customers can find any brand's stores from a single interface
Languages and distance units
Magento storeviews can use different languages. In StoreRocket, edit every word the locator shows on any plan. Showing it in each visitor's own language depends on the plan (see pricing) and covers the locator's built-in text, not your location content. You choose miles or kilometers in the settings.
ERP and CRM integration
StoreRocket's REST API (plan-dependent) lets your own software create, update and delete locations, so location changes in your ERP can reach the locator. You can map ERP data such as warehouse codes or region IDs to custom fields.
SEO for Magento store locators
Configure your store locator page's SEO settings in the Magento admin: a clear URL key, meta title and meta description.
URL Key:
1store-locator
Meta Title:
1Find a Store | [Your Brand] Store Locator
Meta Description:
1Find [Brand] stores near you. Search locations by city or zip code. Check hours, get directions, and find what you need.
Add the page to your XML sitemap and link it from your header navigation, footer, and relevant category pages. The locator page can show for "[brand] + store locator" searches. Pages for individual locations are a separate SEO project.
Troubleshooting Magento Store Locators
Widget Doesn't Appear
Check these in order:
- Page is published and enabled in the Magento admin
- Embed code is complete and pasted in HTML mode (not visual editor mode, which can strip script tags)
- Content Security Policy isn't blocking the script (see Step 8 in the installation guide above)
- No HTML errors in the surrounding content that could break parsing
Quick diagnostic: Open your browser's developer console (F12) and look for errors. CSP violations will show clearly as blocked script warnings.
Cache Issues
Magento's aggressive caching can prevent changes from appearing immediately.
Full cache clear sequence:
bin/magento cache:clean(clears invalidated cache types)bin/magento cache:flush(flushes all cache storage, including FPC)- If using Varnish:
varnishadm "ban req.url ~ /"or purge through your Varnish management interface - If using Fastly or CloudFlare: purge from their respective dashboards
- Clear your browser cache or test in an incognito window
JavaScript Conflicts
If the widget loads but behaves unexpectedly (map doesn't render, search doesn't work):
- Check the browser console for JavaScript errors
- Look for conflicting Google Maps or Mapbox libraries loaded by other extensions
- Test with other extensions disabled temporarily to isolate the conflict
- Verify that RequireJS isn't interfering with the StoreRocket script
WYSIWYG Editor Stripping Code
Magento's WYSIWYG editor (TinyMCE) can sometimes strip or modify embed code when you switch between visual and HTML modes.
Prevention: Always paste the embed code in HTML mode, and avoid switching back to visual mode after pasting. If the editor strips the code, consider using the CMS Block approach instead, which is less prone to WYSIWYG interference.
Analytics and lead capture for Magento merchants
Locator analytics depend on the plan.
What StoreRocket tracks
- Views and searches: How often the locator is viewed and searched
- Where people searched: A map of the places visitors searched, revealing demand patterns
- Location performance: Which locations get the most clicks
- Search terms: What visitors type into the search box, such as city names and zip codes
- No-results searches: Searches in areas where you have no nearby location, a hint for where to expand
- Leads: Details visitors leave when a search finds no nearby location (plan-dependent)
Using the data
Fulfillment planning: High search volume in a region with no nearby stores points to demand for expansion.
Marketing spend allocation: Compare where people search with where your digital advertising goes.
New market validation: Before opening a new location, check search volume in candidate cities. Learn more about measuring store locator ROI.
Implementation checklist
Pre-launch
- All store locations entered with accurate addresses
- Weekly opening hours verified
- Filters created and assigned
- Theme matches Magento store branding
- Mobile experience tested
- CSP whitelist configured (if needed)
Launch
- Embed code added to CMS page
- Page linked in navigation
- Cache cleared
- Search functionality verified
- Mobile tested again
Post-launch
- Analytics confirmed (if your plan includes them)
- Staff trained on updates
- Update process documented
After you install
Once the code is on your Magento page, your team changes locations in the StoreRocket dashboard and the locator updates itself. StoreRocket maintains the hosted locator and delivers updates through the embed already on your site.
StoreRocket gives Magento merchants with stores or dealers a store locator for their own website: import your locations from a spreadsheet, match it to your brand and paste one embed code. Create your locator with a free trial, no credit card needed.
Frequently Asked Questions
How can I add a store locator to Magento?
Options include an Adobe Commerce Marketplace extension, an embedded platform like StoreRocket, or custom development.
How much does a Magento store locator cost?
Costs vary by approach. Compare the selected extension's published price, the development effort for a custom module, and the subscription for an embedded platform. StoreRocket's current prices are on its pricing page.
Can I use a SaaS store locator with Adobe Commerce?
Yes. StoreRocket uses an HTML and JavaScript embed, with no Composer package or Magento module installation.
Will a store locator extension slow down Magento?
It depends on the extension. Magento extensions can add PHP code, database queries, JavaScript, and CSS to the installation. With StoreRocket, the locator runs from the embed only on the page where you add it, with no StoreRocket server-side processing inside Magento.
How do I add multiple store views to a store locator?
There are two approaches depending on your needs. Option 1: Separate projects. Create a different StoreRocket project for each storeview. Each project has its own set of locations, its own branding, and its own embed code. Add the appropriate embed code to each storeview's CMS page. This is best for multi-brand retailers. Option 2: Single project with filters. Use one StoreRocket project with all locations and configure filters for brand, region, or language. Embed the same project across storeviews but customize the default filters per storeview. This is best for single-brand international retailers.
Can I migrate my store locator from Magento 1 to Magento 2?
Check whether the extension vendor publishes a Magento 2 migration path. With an embedded platform like StoreRocket, the location data and configuration remain in the StoreRocket project while you replace the page carrying its embed.
Does StoreRocket work with Magento's REST API?
StoreRocket has its own REST API that can be used alongside Magento's API for custom location integrations. Common use cases include syncing new location data from an ERP that also feeds Magento. The APIs are complementary, so you would build a middleware layer to connect the two systems.
How do I set up a dealer locator on Adobe Commerce B2B?
StoreRocket handles B2B dealer and distributor locators. Create your dealer network as locations in StoreRocket, add tier designations (Authorized, Premium, Certified) using filters, and add B2B-specific custom fields like product lines carried or minimum order quantities. The dealer locator features work the same whether you're on Magento Open Source or Adobe Commerce B2B. Lead capture depends on the plan.
Should I use StoreRocket or build a custom Magento module?
Choose custom development when you need Magento-specific workflows that an embed and API cannot provide. Choose StoreRocket when its published locator, analytics, lead-capture, data-sync, and API features cover the requirements.
Plans
StoreRocket publishes its plans on its pricing page, billed monthly or yearly, with a free trial and no sales call.
Further Reading
- What is a store locator?. Comprehensive overview of store locator technology and use cases
- Best store locator software in 2026. Side-by-side comparison of every major store locator platform
- Store locator examples. Real-world examples from leading brands
- Store locator ROI. How to measure the business impact of your store locator
- Best dealer locator software. Guide for manufacturers and B2B brands with dealer networks
Need help setting up your Magento store locator? Contact our team and we'll walk you through it.