For freemium apps & site owners

The 95% who
never upgrade
can still pay you.

Freemium math is brutal: a strong conversion rate is 2–5%, which means almost everyone using your product costs you money and sends you nothing. Most owners write that off as the cost of doing business. It is actually your largest untapped revenue line.

The problem

Your free tier has a bill, and no invoice

95%

never convert

Even a great freemium funnel converts a few percent. The rest use the product, generate support load, and pay nothing.

100%

cost you money

Every free session burns hosting, bandwidth, model tokens and database rows. That bill arrives whether or not anyone upgrades.

$0

recovered, today

Without ads, the only lever you have on that cost is making the free tier worse — which shrinks the top of your funnel.

What changes

Three things happen at once

Adding one script tag to your free tier does more than add a revenue line — it changes the shape of your whole funnel.

💰

The free tier stops being a cost centre

Every free user generates a few cents a month instead of only a hosting bill. At modest scale that covers your infrastructure; past that it becomes profit on users you had already written off.

⬆️

Ads become your upgrade pitch

An ad-free experience is the single easiest paid feature to sell, and the only one that costs you nothing to build. Every ad a free user sees is a quiet, honest reminder that upgrading removes it.

🎚️

You keep total control

The ad renders only where you put the tag. Hide it for subscribers with a one-line conditional, show it on some routes and not others, block advertisers or entire categories you don’t want near your product, or pause the whole site instantly.

The implementation

You decide where it renders, and who sees it

Adimite has no concept of a plan, a subscriber or a free user — it only answers requests for your zone. Where the tag goes, and whether it renders for a given visitor, is entirely your code’s decision.

Dashboard.jsx
import AdimiteAd from "./AdimiteAd";

export default function Dashboard({ children }) {
  return (
    <>
      {children}

      {/* Renders wherever you put it. Wrap it in whatever
          condition you like — or none at all. */}
      <AdimiteAd zone="YOUR-ZONE-ID" />
    </>
  );
}

Plain HTML? One line.

Outside a framework, the tag is the whole integration — drop it where the ad should appear:

<script async
  src="https://adimite.com/api/serve/ZONE">
</script>

Where to put it

  • ◆ Below the main content of a dashboard
  • ◆ At the end of a results or feed list
  • ◆ In a sidebar under your own nav
  • ◆ On an export or processing wait screen

What your users see

One sponsored card: a square image, a headline, one line of copy, and the advertiser’s domain, so a visitor can see where a click leads. Clearly labelled, no cookies, no tracking pixel, no pop-up, no autoplay video. It loads async and never blocks your app from rendering.

React & Next.js

The drop-in component

React hoists a bare <script async> tag into the document head, where the ad would render out of view. Copy this component once and the tag mounts exactly where you place it — no hydration warnings, no duplicate loads.

AdimiteAd.jsx
"use client";
import { useEffect, useRef } from "react";

export default function AdimiteAd({ zone }) {
  const ref = useRef(null);

  useEffect(() => {
    const el = ref.current;
    // Guard against StrictMode's double-invoked effects,
    // which would otherwise load the ad twice.
    if (!el || el.dataset.adimiteLoaded) return;
    el.dataset.adimiteLoaded = "1";

    const s = document.createElement("script");
    s.async = true;
    s.src = `https://adimite.com/api/serve/${zone}`;
    el.appendChild(s);
  }, [zone]);

  // Mounting after hydration keeps React from wiping the
  // injected ad when it reconciles this subtree.
  return <div ref={ref} />;
}

Earnings calculator

What is your free tier worth?

Drag the sliders to match your traffic. Defaults assume a typical freemium split where 90% of usage comes from users who never pay you.

50,000

Screens where the ad is mounted — not unique visitors.

90%

Only views where the tag renders can earn. That split is entirely your call.

1.0%

1–2% is typical for a well-placed, relevant in-app ad.

$2.00

Per 1,000 impressions.

$0.25

Per click.

Your estimated earnings

$141.75

per month

Ad-supported views
45,000
Clicks
450
From impressions
$63.00
From clicks
$78.75
Yearly
$1,701.00

Estimate only. Your actual earnings depend on what advertisers bid and how your users engage. All figures already include your 70% revenue share.

Before you wire anything in

Adimite is early. Withdrawals run through Stripe — connect an account once, then request a payout and it is reviewed before the transfer goes out. Or skip the withdrawal entirely and move earnings straight into your ad wallet, which is instant and free. The full shipped-versus-not list is on the home page.

Objections

The reasonable worries

Won’t ads make my free tier feel cheap?
One tasteful sponsored card is not a banner farm. Place it where it reads as a recommendation rather than an interruption — the end of a list, the bottom of a dashboard, a sidebar. Every ad is the same restrained shape: a square image, a headline, one line of copy, and the advertiser’s domain. Campaigns are self-serve and not reviewed yet, so you get the controls instead: block any advertiser you see on your sites, block whole categories outright, or pause the site entirely — all of it takes effect on the next ad request.
Won’t this cannibalize my subscriptions?
It works the other way round. Ads give your free tier a visible, honest cost, which makes upgrading feel like removing something rather than paying for a promise. The two revenue lines reinforce each other: users who never convert still pay you, and users who hate ads convert faster.
How do I make sure paying users never see an ad?
That part lives in your app, not ours — we never see your plans or billing. The ad only appears where you render the tag, so any condition you can express in your own code works, and there is no targeting rule here to keep in sync with it.
What if my free tier is tiny?
There is no traffic minimum and no cost to join, so a small free tier earns a small amount rather than nothing. You keep 70% either way.

Your free tier is already running.
It might as well pay you.