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

# Subscription metrics and KPI dashboard in Reval

> Read your estimated MRR, historical revenue, active subscriptions and subscriber base growth from the Shopify admin.

The dashboard is Reval's home screen inside your Shopify admin. It shows four period indicators with their comparison against the previous period, a daily growth chart, the count per status, the cancellation reasons and the business's all-time milestones.

## Period selector

You choose between **Today**, **Yesterday**, **Last 7 days**, **Last 30 days** and **Last 90 days**. Calendar days ("Today", "Yesterday") are calculated in your store's timezone; the rest are rolling windows. The indicators and the chart respond to the chosen period, and each one is compared against the **immediately preceding period of equal length**. That "% vs previous period" is what gives the number meaning: a revenue figure says nothing on its own, but +12% against the previous period does.

<Note>
  **Cancellation reasons and the Business milestones are the exceptions**: those blocks are complete history and don't change when you move the selector.
</Note>

Each indicator has an info icon with the metric's definition and the values for both periods, a mini-chart of its daily evolution, and a click that takes you to the section with the detail.

***

## The four period indicators

### Subscription revenue

The sum of the subscription orders created in the period — one order per charge. It's money collected, not a projection.

### New subscriptions

The subscriptions created in the period.

### Net growth

New subscriptions minus the period's cancellations. It's the number that sums up whether the base is growing or shrinking: you can have a good month of signups and still shrink.

### Products sold

Units included in the period's subscription orders.

***

## Growth per day

A daily bar chart with the **gains upward** (new + resumed) and the **losses downward** (paused + cancelled). Hovering over a bar shows the day's breakdown: new, resumed, paused, cancelled, and that date's orders and revenue.

It's the most useful view for spotting problems early: a spike in cancellations concentrated in a few days usually points to something specific (a price change, a delayed shipment, a campaign that attracted the wrong audience) rather than gradual deterioration.

***

## Statuses

A row with the current count per status — **Active**, **Paused**, **Cancelled** and **Pending** — with direct access to the [Subscriptions](/en/merchant/subscriptions) list.

***

## Business milestones

A side panel with the all-time accumulated figures, independent of the period selector:

* **Active subscriptions** — how many are charging today, and the all-time total of subscriptions created.
* **Estimated MRR** — the normalized monthly recurring revenue of your active base: frequencies other than monthly are converted to their monthly equivalent. It's called *estimated* because it projects what would be charged if nothing changes; it isn't money collected.
* **Historical revenue** — the money actually collected since the beginning, with the number of orders.
* **Products sold** — all-time units shipped through subscriptions.

***

## Cancellation reasons

A list of why your subscribers left, ordered from most to least frequent. Unlike the rest of the panel, **it's complete history**: it doesn't respond to the period selector.

<Warning>
  The list mixes two distinct phenomena and it's worth reading them separately, because they're resolved in opposite ways.
</Warning>

### Voluntary churn

The customer chose to leave and said why. These are the reasons the portal offers:

* It's too expensive
* I have product piling up
* I want a different product
* Delivery problems
* I don't need it anymore
* Other

Stating the reason is optional, so you'll also see **Unspecified** — those are the cancellations from people who chose "I'd rather not say". A large row there isn't a data problem: it's normal.

Each one points to a different action. *It's too expensive* is an argument about your price or your plan. *I have product piling up* almost always means the frequency is too high, and it's fixed by offering a longer interval rather than losing the customer. *Delivery problems* isn't a product problem but a logistics one.

### Involuntary churn

The customer never decided to leave: **the mandate fell over because the charges failed**. These appear with the following labels:

* Charge declined for insufficient funds
* Charge declined by the bank
* Charge declined — when Mercado Pago doesn't specify the reason

They're generated on their own when MP runs out of retries and cancels the mandate. Nobody chose them.

<Note>
  This distinction is what decides where to put your effort. A spike in voluntary churn is tackled with product, price or frequency. A spike in **declined charges** is a payment-recovery problem: it's tackled by notifying the customer in time so they can update their card. Confusing the two leads to lowering prices when the problem was an expired card.
</Note>

Recovery depends on the customer: **only they can change the card, from the portal**, because Mercado Pago tokens are issued with the cardholder present. You can't do it on their behalf from the admin.

That makes notifying them in time the whole strategy. While Mercado Pago is retrying, the customer can go into the portal and change their payment method without losing their subscription. If the mandate has already been cancelled, they can still **reactivate it** from the portal with a new card. Build a flow in Klaviyo or Shopify Flow on the **Failed charge** event that takes them straight there: every day that passes without that notice is a customer who found out too late.

***

## About declined charges

<Warning>
  The dashboard **has no charge-recovery metric**, because Reval doesn't retry charges. When Mercado Pago declines a charge, it's MP that retries on its own, with its own criteria and its own cadence. Reval records the decline and makes it visible, but doesn't manage it.
</Warning>

Where to see the status of problem charges:

* In **Subscriptions**, the ones with a declined charge appear flagged
* In **each subscription's detail**, the timeline shows the decline with its reason translated, and the charges MP is still reviewing
* If MP's retries run out, MP cancels the mandate and the subscription becomes cancelled, with the reason recorded in the timeline

***

## What you won't find here

These metrics don't exist yet, and it's worth knowing before you go looking for them:

| Metric                     | Status                                             |
| -------------------------- | -------------------------------------------------- |
| Retention cohorts          | Not implemented                                    |
| LTV per subscriber         | Not implemented                                    |
| Future revenue projection  | Not implemented                                    |
| Charge recovery rate       | Not applicable — Reval doesn't retry charges       |
| Daily breakdown in a table | Not implemented; the growth chart is there instead |

For deeper analysis, the raw data comes out through the exports in the Subscriptions and Orders sections.
