Acquisition Sources

The Acquisition tab shows where your paying subscribers actually come from — which UTM campaigns, sources and referring sites are driving Monthly Recurring Revenue (MRR), Annual Recurring Revenue (ARR), Lifetime Value (LTV) and churn. It turns raw UTM data into the attribution view a marketing team needs, without leaving WooCommerce.

Where to find it

Open WooCommerce → Analytics → Subscription Report and switch to the Acquisition tab. You will see a group-by toggle, five summary cards, and a per-source breakdown table below.

Summary metrics

MetricWhat it means
SourcesThe number of distinct acquisition sources subscribers were attributed to, including Unknown.
Monthly Recurring Revenue (MRR)Run-rate monthly revenue from active subscriptions attributed to acquisition sources, using the same normalisation as the Overview tab.
Annual Recurring Revenue (ARR)MRR × 12 — the annualized view of that recurring revenue.
Blended LTVTotal subscription revenue (signups + renewals + switches) divided by the number of customers, across all sources.
Blended ChurnSubscriptions that ended in the last 30 days divided by those active 30 days ago, across all sources.
Blended Churn always uses a 30-day window, matching the Overview tab’s churn card. The per-row Churn % in the table below uses the same window, so the two are directly comparable. Full formulas are on Metric Definitions.

Grouping the data

Use the Group by toggle above the summary cards to change how sources are aggregated:

  • UTM Source — groups by the utm_source parameter, for example google, newsletter or facebook.
  • UTM Campaign — groups by the utm_campaign parameter, for example spring-sale-2026 or black-friday.
  • Referrer — groups by the referring domain when no UTM tags were present, for example producthunt.com or twitter.com.

The per-source table

The Acquisition Sources table lists one source (or campaign, or referrer) per row, with Source, Customers, Active Subscriptions, MRR and ARR, LTV, and Churn % — so you can compare acquisition quality, not just volume.

A few values have a fixed meaning in the Source column:

ValueMeaning
(direct)A subscription that has attribution data, but no campaign or referrer in it — a visitor who typed your address in, or arrived with no trackable source.
adminThe order was created manually in wp-admin.
UnknownNo value was recorded at all for the selected grouping — for example a subscription with no parent order, or a signup with a source but no campaign tag when you are grouping by UTM Campaign.

The difference matters: (direct) means "we looked and there was nothing to attribute", while Unknown means "nothing was captured for this grouping". A large Unknown row usually means untagged links; a large (direct) row usually means genuinely direct traffic.

Use Download at the top-right of the table to export the current view as CSV, with the same columns shown on screen.

The interesting comparison is rarely which source sent the most customers. It is which source sent customers with the highest LTV and the lowest churn — a cheap channel with 3× the churn is usually the expensive one.

How attribution is captured

Attribution is recorded at signup and stored on the subscription itself, so it stays stable for the life of that subscriber. Two sources feed it, and they do not compete — they are stored as separate values:

TouchWhere it comes from
First touch — what the report groups byA first-party cookie this plugin sets on the visitor’s first landing. This is what lets someone who arrives from a campaign today and subscribes next week still be credited to that campaign.
Last touch — the converting visitWooCommerce’s own Order Attribution, which the plugin reads rather than duplicating.

If no first-touch value was captured — for example the visitor blocked cookies, or the subscription predates the plugin — the first-touch value falls back to the last-touch one, so the report always has something to group by rather than dropping the row.

The first-touch cookie

DetailValue
Namezorem_attr_first
Lifetime180 days
ScopeFirst-party, set on your own domain, path=/ with SameSite=Lax
ContentsThe acquisition parameters from the landing URL — source, campaign and referrer. No personal data, no identifiers.
BehaviourWritten once and never overwritten, so the first campaign a visitor arrives from is the one that gets credit.
The cookie is set on the landing page, and is not gated behind a consent banner. There is currently no setting or filter to disable it. If you operate under the EU ePrivacy rules or a similar regime and your consent policy covers analytics cookies, review this before relying on the report — your consent-management plugin may need to block the plugin’s capture script, which will mean first-touch data is not collected for visitors who decline.

Existing subscriptions are backfilled by the historical importer from whatever WooCommerce already recorded on the original orders, so the report is not limited to signups from the day you installed the plugin. It cannot invent a source that was never captured, so older subscriptions commonly land in (direct) or Unknown.

A large Unknown row in the UTM Campaign and Referrer views is normal on stores that do not tag their campaign links. Add utm_source and utm_campaign parameters to your ad, email and social links and the row will shrink as new subscribers arrive.

Troubleshooting

ProblemWhat to check
Everything is landing in (direct)Check that WooCommerce’s own Order Attribution is enabled — it can be switched off under WooCommerce → Settings → Advanced → Features. Also check that a consent plugin or ad blocker is not preventing the capture script from running.
Campaign links are tagged but still show UnknownSome CDNs and link shorteners strip query parameters. Test by visiting a tagged link yourself and confirming the parameters survive to the landing page URL.
No data at all before a certain dateAttribution only exists from the point WooCommerce started recording it. Run the historical import to backfill what is there — see Importing Historical Data.
Counts do not match Google AnalyticsExpected. This report attributes paying subscribers on first touch; Google Analytics attributes sessions, usually on last touch, with its own cookie and window. The two answer different questions and will not reconcile.
A customer credited to the wrong campaignFirst touch wins, and the cookie lasts 180 days. Someone who first arrived from an old campaign and converted through a new one is credited to the old one by design.
MRR here does not match the Overview tabOverview covers every active subscription; this tab covers those with attribution data. Subscriptions with no parent order are grouped under Unknown rather than dropped, but the totals can still differ.