Market basket analysis for Shopify orders, turned into a test backlog.
Upload a Shopify order export or paste one webhook URL. Affinsy finds the products your customers buy together, segments them by purchase behavior, and hands you ranked experiments to run. No app to install.
7-day free trial · First report in minutes
What market basket analysis finds inShopify order data.
Market basket analysis is a data mining technique that reads every order in your Shopify store and finds the products that land in the same basket more often than chance would predict. The output is a list of association rules: if a customer buys product A, how likely they are to also buy product B, and how much more likely than a random shopper. Every rule is ranked by revenue impact rather than statistical lift alone, and arrives with the hypothesis it supports.
How often the pair appears together across all orders. Salvia 'Caradonna' and Lavandula 'Hidcote' share a basket in 10.4% of the sample store's orders, so the rule rests on hundreds of real transactions rather than a handful.
How often the second product follows the first. 67% of baskets holding the Salvia also hold the Lavandula, which decides whether a product-page recommendation lands.
How much more likely the pair is than chance. A lift of 2.9 means customers who buy the Salvia are almost three times as likely to buy the Lavandula as a random customer. Above 1 is a real association; below 1 is a pair of substitutes that cannibalise each other.
Beyond the same basket,what else the report sees.
The minimum-support floor adapts to your order count, between 0.3% and 5%, so a 2,000-order store and a 200,000-order store both get rules that hold up. Substitute pairs and out-of-stock products are filtered out of the ranked list by default, because a bundle built on two products that replace each other loses money.
Same-basket rules cannot tell you which product opens the relationship. Purchase order looks across a customer's later orders and reports which product tends to come first, so you know what to lead with in ads and on the homepage.
Consumables come back on a rhythm the basket view never shows. In the sample store, pine bark mulch is reordered every 129 days on average by 278 repeat buyers: a reorder reminder waiting to be scheduled, with the audience already built.

How your Shopify data gets in
Three paths, all using what Shopify already gives you. Affinsy is not a Shopify app: there is nothing to install, review, or grant store-wide permissions to.
- In Shopify admin, open Orders and click Export.
- Choose CSV and the date range you want to analyze.
- Drop the file into Affinsy. Shopify's column layout is detected and mapped automatically.
- Copy your signed webhook URL from the Affinsy dashboard.
- In Shopify, open Settings, then Notifications, then Webhooks.
- Add an order creation webhook pointing at your URL. New orders stream in automatically from then on.
- Create a dataset and authenticate with your API key.
- POST orders to /api/v1/data/orders from your pipeline, one by one or in batches.
- Trigger runs and pull results over /api/v1/reports, or get a webhook when a run finishes.
Two reports and a plan,from one order history.

Association rules over your real orders: which products pull each other into the cart, how often, and what each pairing is worth. Ranked by revenue impact, not just statistical lift.
Every customer scored on recency, frequency, and monetary value, then grouped into segments like Champions, Loyal, At risk, and Hibernating, each with counts and revenue share. Acquisition cohorts show which months' new customers came back and what they are worth.
Each finding comes with a hypothesis you can act on: the bundle to offer, the segment to target, the cross-sell to test, ranked so you know where to start.
Running Shopify stores for clients?
One workspace, one dataset per client, on a flat $299/month for up to 10 client datasets. Schedule reruns on your cadence and walk into every QBR with a fresh, statistically backed test backlog instead of rebuilding spreadsheets the night before.
What to do with the ruleson Shopify.
The report ends in a ranked test backlog. These are the four places its findings usually go on a Shopify store.
Take the top rules by revenue with lift above 1.5 and enough support behind them, and build them as bundles with Shopify's own Bundles app. Start with pairs the substitute filter has already cleared.
Shopify's Search & Discovery app lets you set complementary products on each product page by hand. Use the highest-confidence consequent for each hero product, so the slot shows what customers actually add.
Export any RFM segment as a CSV with Klaviyo, Omnisend, or MailerLite headers and send it its own offer: win-back for At risk, early access for Champions, a second-order nudge for new customers. The rules tell you which product to put in the email.
For products on a replenishment cycle, schedule a reminder just before the observed gap. Affinsy builds the audience of customers due in that window, so the email reaches people who are about to run out rather than everyone who ever bought.

Shopify specifics
No. Affinsy never appears in your Shopify admin. You either upload a CSV export, paste a webhook URL into Shopify's own notification settings, or push orders over the API. Nothing runs inside your store.
The standard Orders export from Shopify admin (Orders, then Export, then CSV). Affinsy recognizes Shopify's column names and maps them for you, so there is no manual column matching.
A data mining technique that finds products bought together more often than chance would predict. It works on transaction data you already have: one row per product per order. Affinsy runs it on your Shopify order export and reports each pairing with its support, confidence, lift, and the revenue flowing through it.
Association rule mining with a minimum-support floor that adapts to your order count for same-basket rules, and PrefixSpan for the purchase-order sequences across a customer's later orders. You never set thresholds by hand; a re-run dialog is there if you want to override them.
Export your orders, upload the file, and start the analysis; the first report is ready in minutes. The result is a ranked list of association rules with the revenue behind each one, plus RFM segments and a test backlog built from the same order history. No spreadsheet formulas, no Python.
RFM segmentation works from your first upload. Market Basket Analysis gets stronger with more co-purchase history: the more orders you include, the more reliable the bought-together rules become, so export the widest date range you can.
Affinsy only needs a stable per-customer identifier for segmentation. You can use a customer number or a hashed email instead of a raw address if you prefer to keep PII out. If you plan to export segments to an email tool later, keep real email addresses in the data.
Your next bundle is alreadyin your order history.
Export your Shopify orders and see the first report in minutes.
Order data from: Affinsy for WooCommerce · Affinsy for Shoper · Affinsy for Haravan · Affinsy for Shopee · Affinsy for Magento · Affinsy for PrestaShop
Segments out to: Affinsy for Klaviyo · Affinsy for MailerLite · Affinsy for Omnisend
