Customer Value Report
The Customer Value Report is a revenue analytics view in the Odus Dashboard. It shows how much revenue each segment of your business generates, including first-charge performance, upsell revenue, rebill revenue, and lifetime value per customer group.
Use this report to compare the value of different products, pricing tiers, acquisition campaigns, or time periods.
Navigate to the report
- In the Odus Dashboard, go to Reports in the left navigation menu.
- Under Reports, select Customer reports.
The page loads with a summary chart at the top and a detailed table below.
Set the date range and timezone
The date range selector is at the top-left of the page. Click it to open a date picker and select a start and end date.
Next to the date range, you can switch between UTC and your merchant timezone. When you switch to your merchant timezone, all timestamps in the report are interpreted in that timezone. This is useful when your business operates in a specific region and you want daily totals to match your local business day.
Your merchant timezone is configured in Settings > Merchant Configuration. If it is not set, the report defaults to UTC.
Choose a grouping
The report groups results by one dimension at a time. Use the Group by tabs to select how rows are organized:
| Tab | Groups results by |
|---|---|
| By Product | Product name |
| By Price | Price plan name |
| By Currency | Billing currency |
| By Date | Day (calendar date) |
| By UTM Source | utm_source attribution parameter |
| By UTM Campaign | utm_campaign attribution parameter |
Switching the grouping updates both the chart and the table immediately.
Understand the metrics
Each row in the table shows the following metrics for that segment:
| Metric | Meaning |
|---|---|
| FC Quantity | Number of first charges (initial purchases) in the selected period. |
| FC Amount | Total revenue from first charges. |
| FC AOV | Average Order Value for first charges — total FC revenue divided by FC quantity. |
| Upsells Quantity | Number of upsell transactions accepted after the first charge. |
| Upsells Amount | Total revenue from upsells. |
| Upsells AOV | Average value of a single upsell transaction. |
| Total AOV | Combined average order value — FC amount plus upsells amount, divided by FC quantity. |
| Rebills Quantity | Number of subscription renewal charges in the period. |
| Rebills Amount | Total revenue from subscription renewals. |
| LTV | Lifetime Value — total revenue per initial customer, calculated as FC amount plus upsells plus rebills, divided by FC quantity. |
The Total row at the bottom of the table shows the aggregate across all rows for the selected period and grouping.
The summary chart at the top visualizes four key values for the entire selected period: FC AOV, Upsells AOV, Total AOV, and LTV.
If your report is grouped by Product and the "Annual Plan" row shows FC AOV of $120 and LTV of $340, it means customers who bought the Annual Plan paid an average of $120 on their first charge and generated $340 in total revenue including upsells and renewals.
Export to CSV
To download the current report as a CSV file:
- Make sure the date range and grouping are set to what you want to export.
- Click the Export CSV button in the top-right corner of the table.
The downloaded file includes one row per segment plus a Total row. Monetary values in the CSV are expressed in the display currency set in Settings > Merchant Configuration. The filename includes the selected date range for easy reference.
Access the report via API
You can retrieve the same data programmatically using the GET /reports/customer-value endpoint.
Query parameters
See the GET /reports/customer-value reference for the full list of supported query parameters, including groupBy, measures, date filters, and status exclusions.
Example request
GET /reports/customer-value?groupBy=product.name&createdAt[gte]=2026-01-01T00:00:00Z&createdAt[lte]=2026-01-31T23:59:59Z
The response is a JSON object with a data array containing one entry per group, and a total object with the aggregate across all groups.