The first 18 days after connecting Journey by Mediavine, ad revenue on my site jumped daily: the weakest and strongest days differed by at least 18 times. At the same time, CPM increased 2.3 times and revenue per 1000 sessions increased 3.5 times during this period. This is calibration: the advertising system learns from your traffic. A similar setup period exists in all ad auction networks, but it lasts for different lengths of time.
A disclaimer immediately: this is data from one site over 18 days, and it coincided with the beginning of the fourth quarter when advertising budgets grow seasonally. I am not providing absolute revenue amounts – only changes in metrics, which are read the same way on any site.
In articles about choosing between AdSense and Journey and about 5 factors of RPM, I deliberately did not provide numbers from the dashboard: the ads had been running for too short a time. Journey has been running on webscraft.org since October 15, 2026, and now there are the first 18 days of data. This is the first snapshot of the promised "Month 1" – I will add the full month in an update.
Calibration is a period when ad systems first see your audience. Advertisers don't yet know how much your readers are worth, so bids are cautious, some ad slots are not sold, and daily revenue fluctuates. Why this happens – from accumulating data on ad visibility to classifying the site's topic – I discussed in the section on the setup period.
It's also useful to remember how Mediavine itself interprets its main metric: RPM is just a formula that relates revenue and sessions, not the "rate" you earn (Mediavine blog). If revenue or the number of sessions changes, so does RPM.
🔀 Is calibration the same everywhere
The mechanics are similar: a new network collects data about your traffic, and advertisers in the auction learn to evaluate it. However, the duration and reasons for fluctuations depend on what exactly the network is configuring.
Network
What they say about the start
Duration
Raptive
when switching from another network, a temporary RPM drop is normal (Raptive FAQ)
often 4–5 days, up to 2 weeks
Ezoic
the network also tests ad placement on pages, so first is the "discovery" phase, then optimization (Ezoic help)
about 12 weeks, longer for small sites
Journey by Mediavine
I did not find an official calibration term
on my site, the strongest fluctuations are in the first 2 weeks
What from this article is applicable to any network: the relationship between CPM, impressions, and RPM, the effect of weekends and seasonality, the rule "don't touch ads while the system is learning," signs of technical malfunction. What is specific to Journey: RPM per 1000 sessions, "premium sessions," and dashboard behavior – I write about these separately.
⚠️ Please note: I have not connected Ezoic and Raptive – their terms are taken from official help documents. You can only compare your figures with the network you are working with.
📈 Three metrics that show calibration
For the first 18 days, all three key indicators increased. It is their change, not the total revenue, that shows that calibration is underway.
Metric
What it shows
First 3 days → October
CPM
how much advertisers pay for 1000 ad impressions
×2.3
Ad impressions per session
how many ads are actually shown per visit
1.36 → 2.05 (×1.5)
Session RPM
revenue per 1000 sessions
×3.5
These three lines are related by a simple dependency:
Session RPM = CPM × impressions per session
Therefore, 2.3 × 1.5 gives approximately the same 3.5 (the difference is due to rounding). Revenue per visitor is growing from both sides simultaneously: impressions are becoming more expensive, and there are more impressions.
🧑💻 My experience: "first 3 days" means October 15-17 from the "last 30 days" report in the Journey dashboard, "October" means the summary report for October 15-31. Both figures are from the same dashboard, so they are counted the same way.
CPM: Advertiser bids
Most likely, advertisers received more data about my audience and started placing higher bids. But honestly, seasonality could have contributed to some of the growth. Mediavine explicitly states that in December you generally earn more than in July because advertiser demand for the same placements is higher (Mediavine blog). October is the beginning of this seasonal growth, and it's impossible to separate the two effects within a few weeks.
Impressions per session: Ad slot fill rate
In the first few days, some ad slots remained empty or the ads didn't have time to load. Over these weeks, impressions per session increased by half, with the same page templates – I didn't change anything in the layout.
Session RPM: Publisher summary
Mediavine calculates RPM per 1000 sessions, not page views: RPM = revenue / sessions × 1000 (Mediavine formula). Therefore, it cannot be directly compared with AdSense RPM – I explained why in the comparison of page RPM and session RPM.
📉 Why revenue fluctuates daily
The thin line is daily revenue, the thick line is the 7-day average. The scale is relative, without amounts. The daily line looks like a saw, and the 7-day average for the period from October 21 to November 1 has approximately doubled.
What the graph shows:
The spread between days is at least 18 times with almost the same traffic.
The weekend of October 24-25 was one of the weakest days of the period. This resembles the classic "weekend effect."
But Sunday, November 1, was the peak. This means there is a pattern, but the noise at the start is stronger than it.
Another interesting point. Mediavine writes that RPM usually drops in the first week of each month because advertisers spend less at the beginning of the month (Mediavine blog). And my best day fell on November 1. One data point proves nothing – neither one way nor the other.
💡 In practice: look at the 7-day average and compare week to week. A single day at the start is noise, not a signal. This rule works in any network.
🪤 Pitfalls in reports at the start
At the start, the numbers themselves are less nerve-wracking than how the dashboard displays them. Here are three things I fell into myself with Journey.
Data appears with a delay
On the morning of November 1, instead of monthly revenue, the dashboard showed only "Collecting more data. Check back soon!". The report for the previous day is not generated immediately, so fresh figures may be incomplete. Do not draw conclusions based on today's and yesterday's data.
Percentage changes are exaggerated
The dashboard compares each day to the previous one: "+718.2%", "+216.7%", "−49.4%". It sounds dramatic, but at the start, the daily revenue is very small, and such a change means nothing. While the system is calibrating, it's better not to look at percentage changes at all.
"Last 30 days" window at the start
My first "last 30 days" report covered September 18 – October 17, but ads were only running for 3 days out of those 30. If you compare such figures with monthly traffic in GA4, it might seem like the network "doesn't see" most visitors. Evaluate only periods when ads were running from the first to the last day.
🚫 What not to do during calibration
It's easier to break calibration than it seems. Here's what I consciously haven't touched since day one.
Don't draw conclusions based on 1-2 days. My weakest and strongest days differed by at least 18 times.
Don't tweak ad settings. Mediavine warns that any change in settings can affect revenue (Mediavine blog). Journey currently has few settings – Mediavine only promises to add more control (Mediavine announcement).
Don't optimize the ad script. For a developer, this is the biggest temptation. Mediavine directly asks not to minify or "speed up" its script with third-party tools and not to enable lazy loading for iframes and videos: this breaks ad delivery (Mediavine blog).
Don't touch ads.txt. If it's set up as a 301 redirect to a file managed by the network, leave it as is.
Don't add other ad networks without checking the program's terms.
Don't click on your own ads or reload pages to "check" them. This is invalid traffic – more details in the article on how Google AdSense anti-fraud works.
Don't compare the first week with the monthly total. The first days are the weakest by definition.
🚨 When it's really worth worrying
Jumps are normal. But there are situations where it's no longer calibration, but a technical problem.
Zero income for 3-4 days in a row with stable traffic. An isolated drop at the start happens, several days in a row - no. Compare with GA4: there are visitors, but no income - so the ads are not showing.
Ads are not appearing on pages. Mediavine recommends opening a popular article in incognito mode, adding ?test=houseads to the address, and checking all ad blocks on mobile and desktop (Mediavine blog). Just look - don't click.
RPM per day is abnormally high or low. According to Mediavine, wild RPM fluctuations often indicate inaccurate session data: incorrect or deleted analytics code. And duplicate analytics code doubles page views and lowers Page RPM itself (Mediavine blog). Check if the number of sessions in GA4 for that day is similar to the usual.
ads.txt is not opening. Open your-site/ads.txt: a list of network partners should appear. How I set up a redirect on a non-WordPress site is shown in the case study of connecting Journey on Spring Boot.
🔭 What's next
The first weeks showed the direction, but not the plateau. The coming months will add two more effects to the calibration.
Seasonality. November and December are the peak of advertising budgets, and January and July are called the weakest months of the year by Mediavine (Mediavine blog). If your RPM drops in January, it's not necessarily a breakdown. More details in the section on geography and seasonality.
Geography. Journey counts "premium sessions" - traffic from premium advertising markets such as the USA, UK, Canada, and Australia. Traffic from other countries is not penalized (Mediavine announcement). Most of my readers are outside these markets, so the absolute numbers are more modest than for sites with a predominantly English-speaking audience. But this does not change the dynamics of the metrics.
In a few weeks, I will update this article: I will add a full month and a second month of data and see if the metrics have reached a plateau. And I wrote about which article topics bring a higher RPM in the article about niches.
❓ Frequently Asked Questions
How long does ad calibration take?
There is no single term. Raptive writes about a drop of 4-5 days, sometimes up to 2 weeks, Ezoic - about optimization for about 12 weeks. I did not find an official term for Journey; on my site, the strongest jumps were in the first two weeks. It is worth evaluating the result no earlier than a month after the ads have been fully operational.
Does ad calibration work the same way in all networks?
The mechanics are similar: the network collects traffic data, and advertisers learn to evaluate it. But the duration varies: networks that also test ad placement, like Ezoic, need more time.
Why is yesterday's income so low?
Data for the last day or two may not be complete yet, and individual days at the start differ significantly. In addition, Mediavine writes that RPM usually drops in the first week of the month. Look at the weekly trend, not a single day.
Can calibration be accelerated?
No. The best thing you can do is not to interfere: do not change ad settings, do not optimize the ad script, do not touch ads.txt, and maintain stable traffic.
Why can't Journey's RPM be compared to AdSense's RPM?
Mediavine calculates revenue per 1000 sessions, while AdSense usually shows revenue per 1000 page views. These are different metrics for the same money.