Weekly Shopify customer geography brief in Notion
Every Monday at 9am ET, get a one-page Notion brief on where last week's Shopify customers came from, with country and metro clusters and what's new.
Every Monday at 9am America/New_York, build me a weekly geographic intelligence brief on new Shopify customers and file it into Notion. The trigger is cron.
Step 1. Pull customers from Shopify. Use Shopify's List Customers operation to fetch every customer created in the last seven days (created_at_min set to seven days before the run, paginated to completion). For each customer, capture the default address if present, otherwise the most recent shipping address from their orders. Keep the customer id, created_at, and the raw address fields (address1, city, province, country, zip).
Step 2. Canonicalize each address with OpenStreetMap Nominatim. For every customer with a usable address, call Nominatim's Search (Forward Geocode) operation with the assembled address string. Pull out the canonical city (or town/village), the metro/admin area, ISO country code, postcode, and latitude/longitude from the top match. Skip and bucket separately any customer with no address or no Nominatim match so totals still reconcile. Respect Nominatim's fair-use limit: sleep at least one second between calls, set a descriptive User-Agent identifying this workflow, and include a contact email on the query string so operators can reach out instead of blocking. This is a public free service, not a production geocoder, so do not parallelize.
Step 3. Cluster and analyze. Group the geocoded customers by country and by metro area (treat Brooklyn, Manhattan, and Queens as one New York metro, for example). Compute: total new customers for the week, top five countries by count, top five metros by count, count of customers in a country that had zero customers in any prior week the workflow has run, and any metro whose share of weekly new customers is notably higher than the prior four-week average. Be willing to say nothing is unusual if nothing is.
Step 4. Write a one-page narrative brief. Keep it concrete and short, not a wall of stats. Open with the headline number (how many new customers, in how many countries). Call out the most interesting one or two things: a first-ever customer in a new country, an unexpected cluster in one city, or a region that grew week over week. Then list the top five countries and top five metros with counts. Close with anything anomalous worth a human eyeball. Three or four short paragraphs plus the two lists.
Step 5. File the brief in Notion. Use Notion's Create a Page operation to create a new page in the user's 'Geographic Intelligence' database (ask for the database id on first run and remember it). Set page properties: Week (date range), Top Country (select), Top Metro (text), New Country Count (number), Total New Customers (number). For the page body, use the narrative as the opening paragraphs, then a bulleted list of the top cities. For each top city, render the bullet as a link whose URL points to https://nominatim.openstreetmap.org/ui/search.html?q=<url-encoded city, country> so a reader can click through to the map. Include an 'OpenStreetMap contributors' attribution line at the bottom (required by Nominatim's license).
Operations to use: shopify List Customers, nominatim Search (Forward Geocode), notion Create a Page. If the Notion database does not exist yet, prompt the user to create one with the property schema above before the workflow runs.
Additional information
What does this prompt do?
- Pulls every Shopify customer created in the past seven days and cleans up their messy address fields into a canonical city, metro area, country, postcode, and map coordinates.
- Groups customers by country and metro area so you can see where demand is actually concentrated, not just what shoppers happened to type into a checkout form.
- Calls out anything notable for the week: your first customer in a new country, an unexpected cluster in one city, or a region that grew week over week.
- Files the brief as a fresh page in a Notion database with properties for the week, top country, top metro, and new-country count, plus a short list of top cities with map links you can click through.
What do I need to use this?
- A Shopify store with permission to read customer records.
- A Notion workspace with a database where the weekly brief should land, shared with your General Input connection.
- An idea of which country and metro names you already think of as your core market, so the brief can flag what's new.
How can I customize it?
- Change the day or time it runs, or shift the lookback from seven days to a month if your store has lower volume.
- Adjust what counts as notable: a new country, a metro you've never sold in before, or a city that doubled week over week.
- Add extra columns to the Notion database, like new-customer count or a short narrative excerpt, so the page also works as a tracker.
- Filter to a specific Shopify market or storefront if you run more than one and want a brief per region.
Frequently asked questions
Why geocode addresses instead of just grouping by the city field in Shopify?
Will this work for a small store with only a handful of new customers per week?
Does the address lookup cost anything?
Can I post the brief somewhere other than Notion?
What about customers without a usable address?
Stop guessing where your Shopify growth is actually coming from.
Connect Shopify, OpenStreetMap, and Notion once, and Geni files a fresh geography brief into your workspace every Monday at 9am ET.