01 — Features
Everything the banner does, and who pays for which part.
OfferBanner is one script tag on your site and a schedule behind it. This page is the whole list — what the banner can say, when it shows up, where the codes come from, and what it measures. Free runs one banner at a time on the dates you book it. Pro runs the rest of your promotions for you.
- One script tag, pasted once, never edited again
- Free: one banner at a time per site, on its own dates, on unlimited sites
- Pro: countries, triggers and Stripe codes, run for you
- Free forever, or $49 once — nothing renews
Free is one banner at a time per site, running worldwide on whatever dates you book it — free forever. Pro is the rest: country targeting, triggers, more than one campaign live at once, and discount codes made and retired for you. You can build a Pro campaign on Free and watch it sit on the calendar marked “Goes live with Pro”; one payment of $49 turns it on, with nothing to redo. No seats, no renewal, and every paid thing we ship afterwards is included.
02 — The banner
Designing the banner
The banner is one line of text across the top or bottom of your page. You control its words, colours, height, font and link, without writing any CSS.
Text formatting and placeholders
FreeBold, italic and underline, plus a placeholder for the discount code and one for the countdown. Everything else prints as the characters you typed.
Six banner styles
FreeSolid, gradient, outline, ticket, glass and bold.
See both plansBrand colours pulled from your URL
FreeEnter your website address and OfferBanner takes the palette off your own page. Nothing ships below WCAG AA contrast.
Adjustable banner height
FreeAnywhere from 32 to 96 pixels, with the padding fitted to it — a 36px banner is 36 pixels tall, not 43.
Custom or inherited font
FreeName a font family, or set it to match and the banner uses whatever font your site is already loading — including the font name your bundler invented.
Whole-banner link
FreeGive the banner one destination and the entire bar is clickable. There is no separate button, so there is never a second answer to “where does this go?”
Position and entrance animation
FreeTop or bottom of the page, arriving with a slide or a fade. Changing either takes no redeploy.
03 — Scheduling
The schedule decides what shows
You install one script tag on a site and never edit it again. A schedule of bookings — each one a banner, a date window and a list of countries — decides what a visitor sees, so a campaign starts and ends without anybody touching the site. Dates are free on every plan: Free plays one booking at a time, on the dates you set it. A booking aimed at particular countries is built the same way and goes live with Pro.
Bookings instead of a publish button
FreePut a banner on the calendar and it runs; remove the booking and it stops. There is no status to set.
Start and end dates in UTC
FreeA campaign starts and ends at the instant the schedule says, in every timezone your visitors are reading from. Free books date windows too, as many as you like.
Country targeting
ProName the countries a booking runs in and nobody else sees it. An empty list means worldwide, which is the list every Free banner runs on. Build it on Free and it waits on the calendar marked “Goes live with Pro”.
What Pro costsBooking priority
ProWhen two bookings overlap, the higher priority number is the one shown.
22 holiday presets
ProBlack Friday, Halloween, Diwali, 春节 and 19 more, each with its own date rule, design and list of countries it is a selling season in. A preset arrives with its discount already written into it, and offers are Pro.
Evergreen bookings with no end date
FreeLeave the dates off and the banner keeps running, worldwide, until you take it down. It needs nobody to switch it on.
Six rotation modes
ProWhen more than one booking is live, the site can hold a single banner, tick, step, flip, scroll, or split the traffic by weight.
Several campaigns running at once
ProFree serves one banner per visitor, whichever booking ranks first. Pro runs as many as you like, side by side, in the same week.
What Pro costsScheduled design switches
ProOne banner that changes its own design for each holiday window you set — pumpkins in October, snow in December, with nobody logging in between.
04 — Discount codes
Discount codes on your own Stripe
Every code is created in the merchant’s own Stripe account, so the code the visitor reads and the discount their checkout applies are the same object. OfferBanner making that code for you, and retiring it when the campaign ends, is Pro; pasting in a code you made yourself is free.
Restricted Stripe key, two scopes
ProCoupon write and promotion code write — the whole of what OfferBanner can do in your Stripe account. You create the key yourself in Stripe’s own dashboard.
One shared code per campaign
ProMinted when the campaign is booked and set to expire when it ends, so a code never outlives the banner that advertised it.
What Pro costsUse a code you already made
FreeAlready have SPRING20 in your checkout? Enter it and the banner prints it as-is, on either plan. Nothing is minted and nothing is claimed.
Warning on unbacked codes
FreeIf nothing minted a code, you did not enter one yourself, and the banner text does not name one, the dashboard says so before a stranger reads it.
Per-visitor discount codes
ProEach person who unwraps the gift gets their own freshly minted, single-use Stripe code. Handed out by the gift, which is a Pro effect.
Per-visitor code expiry
ProSet the hours and a visitor’s code expires that long after they claimed it. The deadline is written onto the Stripe promotion code, so clearing a cookie changes nothing.
05 — Countdowns
Countdown timers
A countdown counts down to the same date the code expires on, not to a cookie a visitor can clear. That is why the arithmetic is short and the rules are strict.
Countdown to a fixed date
FreeSet the date the sale ends and every visitor watches the same clock run down to it.
The campaign’s end caps every code
ProA code expires on whichever comes first: the visitor’s own hours, or the day the campaign stops.
Clock and code have to match
FreeA per-visitor countdown that does not match the code’s own lifetime is refused with the number to fix it, rather than shipped as a banner that is wrong by four hours.
Per-visitor countdown
ProA visitor’s four hours start when they claim, not when you set it up, so the last person to arrive gets the same deadline as the first.
06 — Effects
27 animated effects
Fire, seasons, party, holidays, magic. Most of them are weather — they fall or drift and cannot be clicked. One is a device: a badge the visitor clicks, and a prize that opens.
14 free effects
FreeSparkle, confetti, lights, disco, balloons, bubbles and the holiday drifts.
13 Pro effects
ProFour fires, six falling weathers, fireworks, lightning and the gift.
Full-page effects
FreeEighteen of the 27 can run over the whole page instead of just the banner. The other nine — a full-screen fire, a light string with nothing to hang on — stay on the bar, where they read as intended.
Unwrappable gift
ProA badge on the banner opens a modal, and the visitor gets a code that did not exist until they clicked it.
Prize draw with weighted tiers
ProSet the odds — say a 60% chance of 5% off and a 2% chance of 40%. The draw runs on the server, so nothing the browser sends can pick a winner.
07 — Triggers
Triggers and targeting
The schedule decides which days a banner is on air. A trigger decides the moment it appears to somebody already reading the page. Free shows the bar the moment the page loads; every other moment is a rule about who sees it, and rules are Pro.
Show the bar as the page loads
FreeThe default on both plans, and the whole of what Free does: the visitor sees the bar the moment they see the page.
Delay and scroll-depth triggers
ProHold the banner back 1 to 120 seconds, or until the visitor has read from 10% to 100% of the page.
Exit-intent trigger
ProThe banner appears when the cursor heads for the tab bar — the last moment you get.
Click trigger on any element
ProName a CSS selector on your own page and the banner arrives when a visitor reaches it.
Country targeting per booking
ProTargeting lives on the booking, so the same banner can run a different week in a different country.
08 — Analytics
Views, clicks, claims and redemptions
Four numbers OfferBanner counts itself, and one it reads out of your Stripe account, because that is the only place a redemption exists.
Views and clicks
FreeHow many people the banner reached, and how many of them clicked it.
Code copies
FreeHow many visitors copied the code — the step between reading a banner and using it.
Claims
ProHow many codes the gift actually minted, which is a headcount rather than an impression.
Comparison with the previous period
FreeEvery figure is shown beside the same length of time immediately before it, so a number has a direction and not just a size.
Redemptions read from Stripe
ProThe end of the funnel, counted where it happens. When Stripe is unreachable OfferBanner says so instead of showing a zero.
Activity log
FreeWho scheduled what, when a code was minted, and which surface did it. Readable in the dashboard and by an assistant.
09 — AI agents (MCP)
Run a promotion from a chat window
OfferBanner ships an MCP server on the free plan. An assistant can do the whole job — create the site, design the banner, mint the code, schedule the window, read the stats — without sending anybody back to a dashboard.
15 MCP tools
FreeSites, banners, schedules, offers, stats, activity and the install check — the same actions the dashboard performs, in the same words.
Two OAuth scopes
FreeRead banners, or change them. Write does not imply read, so a grant does exactly what the consent screen said it would.
API key for scripts
FreeFor the things that are not a chat window. Every call acts on the account that owns the key and can never reach anybody else’s sites.
Stripe connection handed back to you
FreeA restricted key can only be created inside Stripe’s dashboard, so the assistant sends you a link for that step instead of asking for the key.
10 — Installation
One script tag, pasted once
The tag is the only thing that goes near your site. Everything after it — a new campaign, a new design, a new country — happens in OfferBanner and reaches your visitors without a deploy.
One script tag per site
FreeOne line, pasted once. There is no second snippet and nothing to update when the campaign changes.
9 guided install methods
FreeBy hand, Shopify, WordPress, Wix, Webflow, Framer, Google Tag Manager, handing it to the AI that built your site, or emailing your developer.
The Webflow walkthroughAbout 14KB gzipped
FreeServed from the edge. It is the one number you can check yourself in a devtools network tab, so it is the measured one.
Rendered inside a shadow root
FreeYour stylesheet cannot restyle the banner and the banner cannot restyle your page. Neither of you has to know what the other named a class.
Install check that fetches your page
FreeIt reads the HTML, finds the tag or does not, and names the content-security policy that is blocking it when one is.
Unlimited sites on both plans
FreeThree shops off one login, each with its own live banner. Free runs one banner at a time per site; Pro runs as many as you like.
Remove the OfferBanner badge
ProFree banners carry a small “Powered by OfferBanner”. Pro banners do not.
What Pro costs
11 — Start
Put a banner on your site and see it in a browser.
The free plan needs no card, and the tag takes about a minute to paste. If it is not doing anything for you by the weekend, delete one line of HTML and we are gone.
Start freeFree plan · No card · Unmetered views