diff --git a/apps/dashboard/src/components/report-chart/retention/chart.tsx b/apps/dashboard/src/components/report-chart/retention/chart.tsx index 3ffd7604..bd22c4ce 100644 --- a/apps/dashboard/src/components/report-chart/retention/chart.tsx +++ b/apps/dashboard/src/components/report-chart/retention/chart.tsx @@ -36,11 +36,12 @@ export function Chart({ data }: Props) { tickFormatter: (value) => `${value}%`, }); const averageRow = data[0]; - const averageRetentionRate = average(averageRow?.percentages || [], true); - const rechartData = averageRow?.percentages.map((item, index, list) => ({ + const averageRetentionRate = + average(averageRow?.percentages || [], true) * 100; + const rechartData = averageRow?.percentages.map((item, index) => ({ days: index, - percentage: item, - value: averageRow.values[index], + percentage: item * 100, + value: averageRow.values?.[index], sum: averageRow.sum, })); diff --git a/apps/dashboard/src/components/report-chart/retention/tooltip.tsx b/apps/dashboard/src/components/report-chart/retention/tooltip.tsx index 00175877..7015eab8 100644 --- a/apps/dashboard/src/components/report-chart/retention/tooltip.tsx +++ b/apps/dashboard/src/components/report-chart/retention/tooltip.tsx @@ -31,7 +31,7 @@ export function RetentionTooltip({ active, payload }: Props) {
Retention Rate: - {number.formatWithUnit(percentage, '%')} + {number.formatWithUnit(percentage / 100, '%')}
diff --git a/packages/trpc/src/routers/chart.ts b/packages/trpc/src/routers/chart.ts index ffacb976..a8ae244a 100644 --- a/packages/trpc/src/routers/chart.ts +++ b/packages/trpc/src/routers/chart.ts @@ -402,9 +402,7 @@ function processCohortData( cohort_interval: row.cohort_interval, sum, values: values, - percentages: values.map((value) => - sum > 0 ? round((value / sum) * 100, 2) : 0, - ), + percentages: values.map((value) => (sum > 0 ? round(value / sum, 2) : 0)), }; });