Shape
What happened during each period
Chart · Ads
Ad click-through rate is the share of displayed ads that users opened. RevenueDot divides ad opened events by ad displayed events and shows the result as a percentage. The chart also lists clicks and impressions, so you can see whether a change came from more taps or from more ads shown.
Formula
CTR = clicks ÷ impressions × 100
Shape
What happened during each period
API name
ad_ctr
Measures
CTR (Percent)
Filter and segment by
App, Country, Platform, App version
Definition
RevenueDot divides the count of rc_ads_ad_opened events by the count of rc_ads_ad_displayed events in the period and shows a percent with one decimal. The table also lists Clicks and Impressions, which are not plotted. If a period has no impressions, the rate is blank.
A week or a month is the ratio of that period's totals, not the average of daily rates, so busy days weigh more. Your SDK ad tracking sends both event types to RevenueDot's /v1/events endpoint, from an ad network adapter or by manual capture. Sandbox events are excluded.
Filter or segment by app, country, platform and app version. The default resolution is day, and week, month, quarter and year are available.
Find it in the dashboard under Analytics > Charts, or call GET /v2/projects/{project_id}/charts/ad_ctr. The response has the same shape as RevenueCat's Charts API.
Worked example
Illustrative numbers for one week.
| Item | Value |
|---|---|
| Clicks | 150 |
| Impressions | 12,500 |
CTR = 150 ÷ 12,500 × 100 = 1.2%.
Why it matters
CTR shows how well your ads and placements hold attention. When a new placement or format lowers CTR, users probably see the ad as noise. When it raises CTR, check that revenue rose too and that the taps are not accidents.
Use it to compare countries, platforms and app versions on equal terms. A change in CTR with steady eCPM tells you about user behavior. A change in eCPM with steady CTR tells you about the price the network pays.
API
Same path and response shape as RevenueCat's Charts API, so existing scripts keep working.
curl "https://api.revenuedot.app/v2/projects/$PROJECT_ID/charts/ad_ctr?resolution=day" \
-H "Authorization: Bearer $SECRET_KEY" # sk_... with charts_metrics:charts:read Reference: Charts guide · REST API v2
FAQ
Divide the number of ad clicks by the number of ad impressions and show it as a percent. RevenueDot uses ad opened events as clicks and ad displayed events as impressions.
It depends on the ad format, placement and audience, so RevenueDot does not publish a benchmark. Compare your own CTR over time and by country and app version.
A blank CTR means no impressions in the period. A zero CTR means impressions but no opened events, which can mean your adapter does not send them.
They are separate measures. CTR is about taps. eCPM is revenue per 1,000 impressions, which depends on what the network pays for the impression and the tap.
Yes. RevenueDot counts every opened event, so accidental taps raise CTR. Check the placement if CTR rises while revenue stays flat.
Get started
Connect your app to RevenueDot Cloud, free up to $10,000 a month in tracked revenue, and all 43 charts fill from your store history after import.
Already have an account? Sign in · Prefer your own servers? Self-host free