Feature

One program, every store, no double-texting.

The moment you open a second location, “text our customers” stops being one question. Whose customers? The store running the Saturday promo, or everyone? And what about the regulars who shop at two of them — do they get the message twice, from two managers, twenty minutes apart? Every visit here rolls up per store, so the audience you pick is the audience you meant.

01 — How it works

Every member has a home store and a full travel history

  • Visits roll up per storeKiosk check-ins, paid orders, and register enrollments each stamp the store they happened at, with a visit count and a first- and last-seen date per store per member.
  • Home store, decided in that orderA staff override wins; otherwise most visits; otherwise most recent visit. It's a rule you can explain to a manager, not a black box.
  • And the whole list, on the recordThe member's page shows every store they've shopped, not just the winner — so you can see the person who buys protein at one store and pre-workout at another.
  • Override it when you know betterThe customer who moved, or the one your manager knows is really a downtown regular — set their home store on the record, or reassign a batch at once. The override outranks the math permanently.
  • Backfill, don't waitA one-click backfill builds per-store history out of the check-ins and orders you already have. Safe to re-run, so nobody has to be brave about it.
  • Unmapped POS locations surface, not vanishA new register or shop id you haven't told us about shows up in the portal to be pointed at the right store. Online, app, and walk-in aren't stores and are never counted as one.

02 — The three audiences

Pick who you mean, in the composer

Store targeting is three filters in the campaign composer, grouped so the distinction is impossible to miss. They answer three genuinely different questions, and most multi-store operators have been approximating all three with a spreadsheet.

Live

Their store

Members whose home store is this one. Single-valued by design, so you can loop the same promo through every store in turn and nobody hears it twice.

Live

Anyone who shops here

Every member who has ever visited this store, home store or not. This is the one for “we're closing early Thursday” or a store-specific event — overlap customers included on purpose.

Live

Shops at more than one store

Your multi-store regulars, as their own audience. These are usually your highest-value members and nobody ever talks to them as a group.

Company-wide sends still behave like company-wide sends: no store filter means everyone, including members who have no per-store history yet. That last part matters more than it sounds — the fastest way to quietly lose a third of your list is a targeting feature that treats “unknown” as “exclude”.

03 — In practice

The problems this actually solves

Two stores is where the pain starts and it never stops scaling. The founding store runs two storefronts plus a training studio, and the same three arguments come up at every operator we talk to: a manager wants to promote her slow Tuesday without blasting the whole chain, the other manager doesn't want his regulars getting her offer, and the owner wants one program and one point balance so a customer isn't a stranger at the second door. Per-store rollups with a single member record settle all three — points and rewards stay company-wide, targeting gets to be local.

It also cleans up reporting. Per-store stats tell you which location is actually growing its member base versus which one is coasting on a good corner, and the multi-store segment tells you how much of your revenue is people who treat you as a chain rather than a shop. Feed those into lifecycle segments and a win-back text can be specific: not “we miss you”, but “we miss you” from the store they actually go to.

Store stamping happens wherever the visit happens — a kiosk check-in at that counter, a paid order through Shopify or Shopify POS, or an enrollment at the register. If you run several shops on one POS, each POS location id maps to one of your stores in the portal, so a sale can't stamp a store key that doesn't exist. Multi-store retail is the shape we build for first: the supplement retail hub has the full picture, and pricing is flat per platform, not per location — $200/mo, 5,000 texts included, 2¢/text after, $500 one-time setup and migration, no contract.

04 — Questions

Straight answers.

How is a member's home store decided?

A staff override wins if someone has set one. Otherwise it is the store with the most visits, and if that ties, the store they visited most recently. You can change one member's home store from their record, or reassign many at once.

Can a per-store text accidentally reach the same person twice?

No. Home store is single-valued — every member belongs to exactly one — so sending the same campaign store by store cannot double-text anyone. If you deliberately want overlap customers included, that is the other audience: anyone who shops here, which pulls every member who has ever visited that store regardless of home.

What happens to members who have no store data yet?

They still receive company-wide sends. A campaign with no store filter reaches everyone, including members imported before any per-store history existed. Store targeting narrows an audience; it never silently strands part of your list.

I already have years of history. Does it start from zero?

No. A backfill rebuilds per-store history from your existing check-ins and orders, and it is safe to run more than once. You get store rollups on day one instead of waiting a quarter for them to accumulate.

05 — Next step

Bring your store list to the call.

Twenty minutes: per-store audiences built live, what the backfill would find in your data, and what migrating every location would look like.

$200/mo platform · 5,000 texts included · no contracts