Skip to content

Commit

Permalink
fix: Correct CTR calculation in InsightStats component
Browse files Browse the repository at this point in the history
The CTR calculation was incorrectly summing up individual CTR values,
resulting in inflated percentages. Now calculates CTR properly by
dividing total clicks by total impressions.

Previous Implementation:
- CTR was calculated by adding up individual CTR percentages
- This resulted in artificially high CTR values
- For example: [10%, 15%, 20%] => 45% (incorrect)

New Implementation:
- CTR is now calculated using (total clicks / total impressions) * 100
- This provides the actual click-through rate across all data
- For example: (50 clicks / 1000 impressions) * 100 = 5% (correct)

This fix ensures accurate CTR reporting in the analytics dashboard.

Changes:
- Removed CTR accumulation from reducer
- Added proper CTR calculation based on total clicks and impressions
- Maintains better statistical accuracy in reporting
  • Loading branch information
lidarbtc committed Oct 26, 2024
1 parent 748dc8f commit 232507e
Showing 1 changed file with 11 additions and 7 deletions.
18 changes: 11 additions & 7 deletions components/insight/InsightStats.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -13,16 +13,20 @@ type InsightStatsProps = {
}

const InsightStats = ({ stats = [], totalKeywords = 0, totalPages = 0 }:InsightStatsProps) => {
const totalStat = useMemo(() => {
return stats.reduce((acc, item) => {
return {
const totalStat = useMemo(() => {
const totals = stats.reduce((acc, item) => {
return {
impressions: item.impressions + acc.impressions,
clicks: item.clicks + acc.clicks,
ctr: item.ctr + acc.ctr,
position: item.position + acc.position,
};
}, { impressions: 0, clicks: 0, ctr: 0, position: 0 });
}, [stats]);
};
}, { impressions: 0, clicks: 0, position: 0 });

return {
...totals,
ctr: totals.impressions > 0 ? (totals.clicks / totals.impressions) * 100 : 0
};
}, [stats]);

const chartData = useMemo(() => {
const months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
Expand Down

0 comments on commit 232507e

Please sign in to comment.