Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.gocrux.io/llms.txt

Use this file to discover all available pages before exploring further.

The Frequency pillar covers everything to do with how often customers come back (customer retention). CRM, email, SMS, retention, repurchase rate and LTV all live here. Along with anything that communicates to existing customers. If the question is about returning buyers rather than first-time buyers, you’re in the right place. Frequency analysis is fundamentally cohort-based. You’re not asking “how is retention this week”, you’re asking “how is the cohort acquired in March performing six months on?”. That distinction matters.

The core formula

Order frequency is predominantly driven by two factors; how many customers make a second purchase (in the typical purchase timeframe) and the size of the subsequent active customer pool (i.e. customers continuing to purchase within the typical purchase period).
repurchase rate x active_customer_base
Where both are filtered to the median repeat order time frame. Note - median is used to avoid outlier influence that comes with averaging.

Retention versus re-purchase rate

There are two retention metrics that get used interchangeably but mean different things.
retention_rate = SUM(active_customers) / SUM(cohort_size)The percentage of a cohort still actively buying at a given point in time.
repurchase_rate = SUM(cumulative_repeat_customers) / SUM(cohort_size)The percentage of a cohort that has come back at least once by a given point in time.
The difference: retention is a snapshot, repurchase is cumulative. A customer who bought once after acquisition contributes to repurchase rate forever, but only contributes to retention rate during the period they were active. For lifetime revenue, the right metric is:
Average revenue per customer = SUM(cumulative_shopify_total_sales) / SUM(cohort_size)The total revenue generated by a cohort, divided by its starting size. This is your LTV at a given months_since point.

The metric tree

Frequency metric tree showing retention rate, repurchase rate and average revenue per customer with cohort dimensions

The role of months_since

Cohort metrics only mean something at a specific time horizon. “Retention rate” without a time period is meaningless. “12-month retention” tells you something. Always pair retention or repurchase metrics with a months_since filter or grouping. A few rules to keep cohort analysis honest:
  • Let cohorts mature. If you’re analysing 6-month LTV, the most recent cohort you can include is the one acquired six months ago. Anything more recent has incomplete data and will pull the average down artificially (note by default we don’t populate immature cohorts in the LTV & Retention reporting).
  • Use leading indicators for fresh cohorts. repeat_orders (from channel_reporting) is a useful early signal or median_repurchase_rate. If repeat order volume is dropping now, retention will drop later.
  • Pick a fixed horizon and stick with it. Switching between 90-day and 180-day retention mid-analysis is a common way to confuse yourself.

Key drivers and dimensions

Retention is rarely uniform across a customer base. The interesting questions are about which segments retain better than others.
For brands with both, this is usually the single biggest driver of retention and LTV. Subscription customers retain dramatically better. A drop in the percentage of new customers acquired on subscription is a leading indicator of falling retention later.This also has a big influencer on your active_customer_base i.e. the number of customers are still active (bought within median re-order timeframe) after their second purchase.Slice by cohort_order_type to compare retention curves between subscription and one-off acquisitions.

Worked example: drop in 6-month retention

The 6-month retention of cohorts acquired six months ago has fallen from 28% to 22%.
1

Confirm cohort maturity

Check the cohort window you’re using has actually had six full months to mature. If you’re including a cohort acquired four months ago in a 6-month retention metric, you’ll get misleading results. Filter cohorts to those acquired between six and nine months ago.
2

Slice by acquisition channel

Retention is steady on Paid Search and Organic. It’s dropped sharply on Paid Meta. The Paid Meta cohort is the driver.
3

Slice by cohort_order_type

Within Paid Meta, the proportion of subscription acquisitions has fallen from 40% to 22%. The remaining one-off customers from this channel retain at roughly 15%, which drags the blended figure down.
4

Find the cause

Cross-reference with the Meta strategy in that period. The team shifted from a subscription-focused offer to a one-off starter pack to test acquisition cost. CAC came down, but the lower-quality customer mix is now showing up in retention six months later.
5

Recommend

Reinstate the subscription offer for prospecting audiences. Track new_user subscription % weekly as a leading indicator. Calculate the LTV-to-CAC ratio for both offer types before deciding the long-term mix.
The cause was a decision made six months ago. Without cohort-level slicing by acquisition channel and order type, you’d see a generic “retention is down” headline and have nothing actionable.

Worked example: repeat orders dropping faster than retention metrics suggest

Repeat orders in channel_reporting are down 15% week-on-week, but cohort retention metrics still look healthy.
1

Recognise the time mismatch

Repeat_orders is a leading indicator. It moves now. Retention curves move with a lag because they’re tied to mature cohorts. The two won’t agree in real time, that’s expected.
2

Slice repeat orders by channel

The drop is concentrated in email and SMS. Both are down 25-30%. Retargeting and direct are flat.
3

Check campaign activity

The CRM team paused two automated flows during a platform migration. The drop in repeat orders aligns exactly with the pause.
4

Recommend

Reactivate the flows once migration completes. Build a flow status check into the CRM team’s weekly review. Estimate the revenue cost of the outage to inform future migration planning.
This is why repeat_orders matters as a leading indicator. By the time it shows up in cohort retention curves, you’ve lost months of compounding revenue.

Where this data lives

The primary mart for cohort analysis is ltv_retention. It contains cohort_size, active_customers, cumulative_repeat_customers, cumulative_shopify_total_sales, sliced by cohort_month, months_since, cohort_channel, cohort_order_type and cohort_product_categories. For real-time signals, channel_reporting exposes repeat_orders and repeat_customer_cr. The relevant dashboards:

Common mistakes

A cohort acquired three months ago cannot have a 6-month retention rate. If you include it, the metric calculation will treat the missing data as zero and pull the average down. Always check cohort maturity before drawing conclusions.
These move differently and answer different questions. Retention is “are they still active right now?”. Repurchase is “have they come back at least once by now?”. Pick the one that fits your question.
A handful of customers who reorder after two years will distort the mean badly. Median is the right metric here. It tells you what a typical engaged repeat customer actually does.
Blended retention numbers hide where the issues actually are. Different channels acquire different customer types. Always slice by acquisition channel before drawing conclusions about retention strategy.
Month-on-month cohort comparisons are noisy, especially for smaller brands. Look for trends across three to six cohorts before concluding something has structurally changed.