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, or pause the whole site instantly from your dashboard.

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 for another software product — 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 React 18 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.

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 — and it looks like a curated mention, because the network only carries other software products.
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.