> ## Documentation Index
> Fetch the complete documentation index at: https://docs.aftersell.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Post-purchase analytics metrics reference

> The full metric and formula catalog behind Aftersell post-purchase analytics: Funnels, Tests, and Product Page Upsell metrics, subscription-upgrade chart definitions, and how summary numbers are calculated.

This page is the complete metric and formula catalog behind the Aftersell post-purchase [analytics dashboard](/aftersell/analytics_in_aftersell). Throughout the dashboard you can hover the **ⓘ info icon** next to any metric to see how it's calculated; the formulas here match those tooltips.

## How summary numbers are calculated

The large summary numbers at the top of each graph are **weighted averages** of the data shown, which gives a more accurate overall view than a simple average. For example, across three days of conversion rates:

* **Day 1:** 3 accepted / 10 shown = 30%
* **Day 2:** 1 accepted / 9 shown = 11%
* **Day 3:** 5 accepted / 15 shown = 33%

The summary number is `(3 + 1 + 5) ÷ (10 + 9 + 15) = 26.5%`, not a simple average like `(30 + 11 + 33) ÷ 3 = 24.7%`. Weighting ensures days with more impressions have the right impact on your totals.

## Funnels tab metrics

| Metric | What it measures | Formula |
| - | - | - |
| **Revenue** | The total revenue generated by Aftersell from Post-purchase and Thank You page offers, in the shop currency. Gross before costs, but after any discount the customer received. Revenue from other products in the order is not included. | `sum(upsell revenue) + sum(downsell revenue) + sum(TY page upsell revenue)` |
| **Revenue per visit** | The average revenue per unique page visit. A unique visit is counted once per customer, even if they view the page multiple times on a single order. The recommended way to measure performance over time. | Post-purchase: `post-purchase revenue / unique post-purchase visits` TY Page: `TY page revenue / unique TY page visits` |
| **Product profit** | The total product profit generated by Aftersell (revenue minus cost of goods sold). | `sum(revenue) - sum(cost of goods sold)` |
| **Product profit per visit** | The average product profit per unique page visit. | Post-purchase: `post-purchase profit / unique post-purchase visits` TY Page: `TY page profit / unique TY page visits` |
| **Impressions** | The total number of times funnel offers were viewed. Counted once per order, even if the same offer is seen multiple times during the same order. | `sum(offer views across all selected funnel offer types)` |
| **Conversion rate** | The percentage of offer views that resulted in an accepted offer. | `(accepted offers / offer impressions) x 100` |
| **Accepted offers** | The total number of offers accepted. Counted when a customer clicks "Accept" and completes the purchase. | `sum(accepted offers across all selected funnel offer types)` |
| **Product profit margin** | The ratio of product profit to revenue. If your products had no costs, this would be 100%. | `(product profit / revenue) x 100` |
| **Average upsell value** | The average revenue per accepted upsell item. Particularly useful when using dynamic products in offers. | `revenue / accepted offers` |

<Note>
  Product profit analytics is currently in Beta; data starts tracking one day after activating, with no historical backfill. Contact support to enable it.
</Note>

### Top Performing Products table

| Column | How it is calculated |
| - | - |
| **Product** | The upsold product name |
| **One column per offer slot** (Upsell #1-3, Downsell #1-2, Thank you page) | The conversion rate for that product in that slot: `(accepted upsells containing the product in that slot / impressions for that product in that slot) x 100` |
| **Revenue** | Total revenue generated from accepted upsells of this product |
| **RPV** | Revenue per visit for this product |

There is no single "Conversion rate" column; the rate is broken out per offer slot. The conversion rate here is based on accepted offers, not individual units sold (one offer containing 3 units counts as 1 accepted offer), but the revenue column reflects the total value of all units purchased.

## Subscription upgrades charts

When a subscription provider is connected, the Funnels tab can show subscription-upgrade charts (toggle between one-time and subscription views). The headline area shows **Revenue** (one-time upsell revenue) and **Additional MRR** side by side. Additional MRR is the recurring monthly revenue your offers added in the period (new subscriptions plus products added to existing subscriptions), as contract price normalized to a month, not cash collected; churn is not subtracted.

| Chart | What it measures |
| - | - |
| **New recurring revenue** | Monthly recurring revenue from new subscriptions and lines your offers added to existing ones, normalized to a month so a quarterly plan counts a third of its charge. Repricing an existing plan is not counted. This is the chart view of the **Additional MRR** headline above. |
| **Subscriptions started** | Brand-new subscriptions your offers created, per day. Adding a product to an existing subscription counts under Subscriptions modified instead. |
| **Subscriptions modified** | Plan changes on subscriptions your offers created or changed, per day. |
| **Subscriptions cancelled** | Cancellation events on subscriptions your offers created or changed, per day (see below). |
| **Active subscriptions** | Subscriptions your offers created or changed that were still active at the end of the most recent measured day. A balance, not a running total. Narrows by funnel only. |
| **Refunds** | Refunded value on subscription upgrade orders, per day. |

Coverage notes may appear when data is incomplete: where a provider has never sent cancellation data, Active subscriptions can only rise, so read it as an upper bound. Subscription data is updated every 30 minutes, so it can trail your live one-time numbers.

### Subscriptions cancelled chart

This chart counts cancellation **events**, not distinct subscriptions, so a subscription that cancels more than once can be counted more than once. It narrows by funnel only (offer and device filters don't apply). Cancellations reach Aftersell over your subscription provider's webhook; if the webhook isn't set up or needs attention, the chart is replaced by a locked card:

| Lock state | What it means | Action |
| - | - | - |
| **Set up webhook** | No webhook has been configured for your provider. | Open Subscription Upgrades settings and complete webhook setup. |
| **Update webhook** | Your webhook credentials are out of date. | Open Subscription Upgrades settings and update your signing secret. |
| **Fix webhook** | Your provider refused the webhook registration. | Open Subscription Upgrades settings and re-register the webhook. |

## Tests tab metrics

### Group-level analytics

| Metric | What it measures | Formula |
| - | - | - |
| **Profit per visit** | The average product profit per unique visit for this variation. | `profit for this variation / unique visits for this variation` |
| **Profit** | The total product profit generated by this variation. | `revenue for this variation - cost of goods sold for this variation` |
| **Revenue per visit** | The average revenue per unique visit for this variation. | `revenue for this variation / unique visits for this variation` |
| **Revenue** | Total revenue generated by this variation. | `sum(upsold product revenue for this variation)` |
| **Conversion rate** | Percentage of offer views that resulted in an accepted offer for this variation. | `(accepted offers for this variation / impressions for this variation) x 100` |

### Performance by variable

Shows how each variable performs on average across all other variables. Switch the metric with the dropdown:

| Variable | What it shows |
| - | - |
| **Profit per visit** | Average profit per visit for each variable value |
| **Profit** | Total profit for each variable value |
| **Revenue per visit** | Average revenue per visit for each variable value |
| **Revenue** | Total revenue for each variable value |
| **Conversion rate** | Conversion rate for each variable value |
| **Impressions** | Total impressions for each variable value |

When picking a winner, look for a variation that performs well across multiple metrics (higher profit per visit, higher revenue per visit, higher conversion rate, and comparable or better average upsell value), not just one.

## Product Page Upsells metrics

| Metric | What it measures | Formula |
| - | - | - |
| **Revenue** | The total revenue from product page upsells. | `sum(PDP upsell revenue)` |
| **Revenue per view** | The average revenue generated per unique view. | `revenue / unique impressions` |
| **Unique impressions** | The number of unique views on product page upsells. | `sum(unique PDP views)` |
| **Conversion rate** | The percentage of unique visitors who completed an order with a product page upsell. | `(upsold orders / unique impressions) x 100` |
| **Purchased products** | The number of products purchased through a product page upsell. | `sum(PDP products purchased)` |
| **Upsold orders** | The number of orders that included a product purchased through a product page upsell. | `sum(orders with PDP upsell)` |
| **Revenue per order** | The average revenue per order containing a product page upsell. | `revenue / upsold orders` |
| **Average upsell value** | The average revenue per product page upsell product purchased. | `revenue / purchased products` |
| **Profit** | The total profit from product page upsells. | `sum(PDP upsell revenue) - sum(PDP upsell cost of goods sold)` |
| **Profit per view** | The average profit generated per unique view. | `profit / unique impressions` |
| **Average upsell profit** | The average profit per product page upsell product purchased. | `profit / purchased products` |
| **Profit per order** | The average profit per order containing a product page upsell. | `profit / upsold orders` |
