You log into your Mediavine dashboard, and the number staring back at you is RPM. It moved since last week. Maybe it dropped. You don't entirely know why, and you definitely don't know if it's "good." Every food blogging Facebook group has someone posting their RPM like a report card, and it's easy to walk away feeling like you're failing at a metric nobody actually explained to you.
RPM is one of the most talked-about, least understood numbers in ad monetization. It's not your traffic, it's not your earnings, and it's not the same thing as CPM, even though the two get used interchangeably all the time. Once you understand what it actually measures and what moves it, the swings stop feeling personal and start looking like exactly what they are: a predictable, mostly out-of-your-control market signal, with a few real levers you can pull.
This guide covers what RPM means, what's typical for a food blog, why it swings seasonally, and where it stops being the most useful thing to optimize.
The Confusion That Comes With Every Dashboard
Here's the pattern: traffic stays flat, content quality stays flat, and RPM drops anyway. It happens almost every January and almost every July, and if you don't know that's a seasonal pattern shared by literally every publisher on the network, it reads like something you did wrong.
That confusion has a real cost. Bloggers chase RPM with content tweaks that don't move the number, because the number was never about their content in the first place. And worse, some treat a low RPM month as proof that display ads "aren't worth it," when the actual issue is a January advertiser budget cycle that has nothing to do with their site.
Understanding RPM properly means you stop reacting to noise and start focusing on the parts of your earnings you can actually influence.
Confused by your ad dashboard? Brand deals don't swing the same way
CPG sponsorships through Jupiter are negotiated upfront, with payouts that don't depend on seasonal ad budgets or fill rates. Join free and add a revenue stream that doesn't move with the market.
RPM vs CPM: What's the Actual Difference
RPM stands for revenue per mille, or revenue per 1,000 sessions. It's the number that tells you, on average, how much you earned for every thousand visits to your site.
CPM stands for cost per mille, and it's what an advertiser pays per 1,000 ad impressions. It's a bidding-side number, not a publisher-earnings number.
The two get blurred because they're related but not identical. Your RPM depends on your CPM rates, but also on fill rate (how often an ad actually serves), how many ad units are on a page, and how many of your sessions can even be monetized in the first place. A high CPM market with a low fill rate can still produce an unimpressive RPM.
The formula that ties it together is simple:
Which is also why growing your sessions and growing your RPM are two completely separate growth levers, and conflating them is where a lot of bloggers get stuck.
What's a "Good" RPM for a Food Blog
There's no single right answer, because Mediavine and similar premium networks are programmatic-first, meaning RPM is calculated individually per site based on audience, content, and ad performance history. No two food blogs will land on exactly the same number, even with similar traffic.
That said, food and lifestyle content sits in a healthy middle tier compared to other niches. Finance and legal content commands the highest RPMs because of high advertiser bids per lead; food, parenting, and lifestyle content typically lands lower than that but still well above generic or low-engagement niches. Most Mediavine publishers report RPMs somewhere in the $10 to $40 range, with some sites seeing far less at the start of a new ad relationship and others seeing well above $30 to $40 during peak season.
The factors that actually move your number, in rough order of how much control you have over them:
Traffic geography. US and other Tier 1 traffic monetizes meaningfully higher than international traffic, since that's where advertiser demand concentrates.
Content length and format. Longer, more thorough posts support more ad placements per pageview, which lifts RPM directly.
Traffic source. Organic search traffic tends to be more engaged, with longer time on site, than traffic arriving from a single social platform.
Time of year. More on this below, and it's the factor with the least to do with your content and the most to do with advertiser budgets.
Why Your RPM Swings Throughout the Year
This is the part that catches the most bloggers off guard. RPM is seasonal, and the pattern is consistent across the entire publisher base, not specific to any one site.
Advertiser budgets reset at the start of each fiscal quarter, and spending is naturally conservative early in a new budget cycle since there are still months left to spend it. That's why January and July, the start of Q1 and Q3, are reliably the lowest RPM periods of the year. It's not that fewer people are reading. It's that advertisers are buying fewer impressions and bidding more conservatively while the year (or half-year) is still fresh.
RPM climbs as the year progresses, picking up through spring, and peaks twice: once near the end of Q2 in June, and again heading into the holiday season in Q4, when retail and gift-driven advertisers spend the most aggressively of the year.
None of this is something you can influence with better content. Knowing the pattern exists is mostly about not panicking when your January dashboard looks worse than your November one, and instead planning your cash flow with that seasonality in mind.
Your brand deal income doesn't follow the ad budget calendar
Jupiter connects food creators to 65+ CPG brand partners and Instacart affiliate commerce, income that's negotiated directly and isn't tied to quarterly ad spend cycles. It's a way to smooth out the months when RPM dips.
A Closer Look at Monetized RPM
Mediavine recently introduced Monetized RPM (mRPM), a refinement to how RPM gets calculated. Standard RPM counts every single session in its calculation, including traffic that could never have generated revenue in the first place: bot traffic, visitors running ad blockers, and sessions from regions where advertisers simply aren't bidding. All of that traffic pulls the RPM number down without ever reflecting how the site is actually performing for monetizable visitors.
Monetized RPM strips that out, so the number publishers see is a more accurate reflection of how their actual ad-eligible audience is performing. If your dashboard RPM looked artificially low before, this is part of why, and it's worth understanding which version of the metric you're looking at when you compare notes with other bloggers.
How to Actually Increase Your RPM
Once you've separated out the seasonal noise, a few things genuinely move the number:
Write longer, more thorough posts. More content supports more ad placements per page, and longer time on page gives each ad more opportunity to be viewed and clicked.
Be intentional about ad density and placement. Sticky sidebar or footer ads that stay visible as a reader scrolls tend to perform well, especially on longer posts where they stay on screen longer.
Prioritize organic search traffic. Search visitors generally convert better for advertisers than visitors arriving from a single social referral source, since search traffic tends to be more intent-driven.
Keep your site fast and your layout clean. Site speed and a clutter-free design support both SEO and ad viewability, two things that compound into a better RPM over time.
These levers move the number meaningfully, but they all share the same ceiling: they're optimizing revenue against a fixed pool of traffic. Eventually, the highest-RPM blog in the world still earns based on sessions times RPM, full stop.
The Ceiling RPM Alone Can't Get Past
This is the part worth sitting with: RPM optimization has a mathematical limit. You can write longer posts, tighten your layout, and chase every seasonal peak, but your ad income will always be sessions multiplied by RPM, and both of those numbers have real-world ceilings.
Brand deals and affiliate commerce don't share that ceiling. A single CPG sponsorship can pay more than a month of display ads on a mid-sized blog, and it stacks directly on top of whatever your RPM is already earning, rather than competing with it for the same pageviews. That's the structural difference between optimizing one income stream and building a second one alongside it.
Stack brand deals on top of your ad income
1,000+ creators have collectively earned $3M+ through Jupiter's CPG partnerships and Instacart affiliate commerce, income that multiplies what you're already earning from display ads instead of competing with it. Free to join.




















