KBMJJ123.cc✦ Indie Log

From $2.45 RPM to a Pivot: What I Learned About Tool Site Ads

TL;DR

I run BulkPicTools, a free batch image processing tool chain. Its US AdSense RPM landed at $2.45.

Not terrible. But lower than I expected.

I spent a week digging through country-by-country data, analyzing user behavior, and mapping keywords to ad bids. The conclusion wasn't "tool sites don't work with AdSense." It was: the ROI on squeezing more ad revenue isn't as good as building paid features alongside it.

So I'm doing both—optimizing ads and building a paid tier in parallel.

Here's the breakdown—what I found, what I tried, and where I'm going next.


Background

BulkPicTools is a tool chain site: upload a batch of images, compress, resize, convert formats, remove backgrounds, add watermarks—a suite of utilities around image processing. No account required, no paywall. Just free tools.

I built it to scratch my own itch, and it got traffic faster than I expected. Once the numbers stabilized, I started paying closer attention to the ad side.

AdSense was the obvious first monetization move—low friction, no decision friction for users. But the RPM numbers made me pause.


The Numbers

Here's what the dashboard looked like (country-level RPM):

CountryRPM
United States$2.45
United Kingdom$2.04
Canada$1.75
Germany$1.92
Australia$1.71
(others)

AdSense dashboard showing country-level RPM data

Replace the table and screenshot with your actual data.

$2.45 isn't bad. A lot of publishers would take that. But for a tool site with US traffic, I'd hoped for $4–$6 based on what I'd read from other indie devs.

I needed to understand why.


The Investigation

User behavior: in and out

I looked at session duration and bounce rate.

Most users landed, uploaded images, processed them, and left. 2–4 minutes average. No browsing. No second page.

That's fine for utility—users get what they need—but it's terrible for ad impressions per session. One page view, one ad load, one shot.

Compare that to a content site where a user reads 3–4 articles. Same user, 3–4x the ad impressions.

Keyword matching: cheap traffic, cheap bids

AdSense matches ads to page content. My pages were keyword-dense around:

  • "free image compression"
  • "resize photos online"
  • "batch image converter"

Those keywords attract low-bid advertisers. Think free tools, hosting deals, generic SaaS. CPC in the $0.20–$0.80 range.

A content page about "e-commerce product photo optimization" or "Amazon listing image requirements"? That attracts Shopify apps, listing tools, design services—CPC $2–$5+.

Same topic, different intent. My pages were optimized for utility. They needed to be optimized for commercial context.

Audience: task-runners vs. browsers

Tool users are in "get in, get out" mode. They're not reading. They're not exploring. They're executing.

That's a low-CTR audience for display ads. They're visually filtering out anything that isn't the tool interface.

I couldn't change that. But I could change what I offered after they used the tool.


What I Tried / What I'm Doing

Ad placement tweaks

I moved the ad unit above the fold, adjusted sizes, tested a sticky sidebar. CTR improved from 0.8% to 1.1%. RPM ticked up to $2.35.

Worth doing. Not a game-changer.

Content strategy shift

I'm adding use-case landing pages:

  • "Batch compress images for Shopify product listings"
  • "Resize photos for Etsy in bulk"
  • "Convert images for social media ad sets"

Each page targets commercial keywords while still pointing to the same tool. Same code, better matching.

AdSense data mining

I sorted pages by RPM in AdSense reports. The highest-earning pages had one thing in common: they mentioned specific platforms (Shopify, Amazon, Etsy) or specific use cases (product photos, ad creatives).

Not a coincidence. Those pages were matching higher-bid advertisers.

Here's the bigger shift: I'm building a paid tier alongside the ad work.

  • Free: basic batch processing, limited count, watermarked output
  • Pro: unlimited batch, no watermark, priority processing, API access
  • One-time or subscription—TBD based on early feedback

The ad optimization work isn't wasted. It funds the product while the paid tier ramps up.


My Take

A few things I'd tell myself if I were starting over:

1. Tool sites can work with AdSense—but the ROI ceiling is real

$2.45 US RPM isn't failure. But to get to $5–$6, I'd need to:

  • Write a lot of use-case content (time)
  • Build backlinks to those pages (more time)
  • Optimize ad density without hurting UX (tradeoff)

That's doable. But each dollar of extra ad revenue requires a lot of work. Paid features have higher leverage.

That doesn't mean "don't optimize ads." It means "don't optimize ads at the expense of building something that scales better."

2. The "free tool + paid upgrade" model is a natural fit

Tool users already see value—they just used your tool. That's the perfect moment to ask for money.

Ad revenue is passive-ish. But it's also capped by traffic volume. Paid revenue scales with usage and willingness to pay, not just pageviews.

3. "Both" is a valid answer

I'm not choosing between ads and paid features. I'm optimizing ads and building paid features.

The ad work is incremental—small changes, measurable results. The paid work is structural—different product, different revenue model.

They don't compete for the same resources. They compound.

4. "Not the highest ROI" isn't the same as "not worth doing"

Is a picture tool site the best AdSense category? Probably not.

Here are a few categories that consistently match higher-bid advertisers:

  • Finance calculators – mortgage, loan, investment compound interest, tax estimators. Advertisers: banks, loan providers, fintech. CPC can hit $5–$20+.
  • B2B/ROI calculators – ad spend ROI, software purchase ROI, pricing page optimizers. Advertisers: SaaS tools, marketing agencies, enterprise software. CPC $3–$15.
  • Legal/compliance tools – privacy policy generators, GDPR checkers, contract templates. Advertisers: legal services, compliance platforms. CPC can be high—but comes with regulatory risk.
  • Design/commercial tools – mockup generators, color palette tools, font previewers—when they target commercial keywords like "branding kit" or "social media template" rather than just "free design tool."

These categories have stronger commercial intent built in. Users are looking for something that helps them make money or save money—so the ads that show up are more expensive.

But "not the best" doesn't mean "bad." $2.45 RPM is real revenue. It covers hosting and buys time to build the next thing.

The key is knowing which lever to pull when. For BulkPicTools, I'm pulling both: optimize ads in parallel with building a paid tier. One funds the other, and neither is a distraction—they're two sides of the same product.


Lessons Learned

  1. Country-level RPM tells you more than the global average. US $2.45 vs. rest-of-world $0.50–$1.00 means your traffic mix matters as much as your content.
  2. Keywords are the throttle on ad revenue. If your pages say "free" and "tool," you'll match low-bid advertisers. Use-case pages with commercial platforms do better.
  3. Tool users have low ad CTR by default. You can optimize placement, but you can't change the fact that they're focused on getting a task done.
  4. Paid features and ad optimization are not mutually exclusive. Do both. One funds the other.
  5. $2.45 isn't a signal to stop. It's a signal to think about the full picture—traffic, keywords, user behavior, and what you're building next.
  6. Not every category has the same ad ROI. That doesn't mean you shouldn't build in it. It means you should know what you're optimizing for—and build your revenue model accordingly.