How it works

Seven steps, from the script tag to the bubble a reader opens. Nothing in the sequence identifies the reader.

The seven steps

The first step is the embed: a publisher adds one script, adbubbles.js, to their site. It is a single static file served through a cache, written in plain JavaScript with no dependencies, and it loads after the page's DOM is ready.

The second is the scope. The publisher tells the embed which part of a page it may read, such as the article element or the entry-content container. The third is the scan: inside that scope the embed walks the text, skipping headings, links, code, preformatted text, form controls, navigation, header, footer, and anything marked data-noads.

The fourth is the match. The embed underlines the first occurrence of each word an advertiser has bought for that site this month, at most one bubble per word, never two in a paragraph, and never more than the maximum the publisher set. The per-site data it reads is a static file, regenerated when a campaign changes, so a page view costs the ad server nothing.

The fifth is the reader's action. A hover on a desktop, a tap on a phone, or Enter on a keyboard opens the bubble; mouse-out, Escape, or a tap outside closes it. The sixth is the count: one view beacon per page load, one open beacon when a bubble has been visible for a second, one click beacon when a link is followed. The seventh is the money: the advertiser's package pays, 70 % of it is divided among the sites the campaign ran on in proportion to opens, and it accrues daily.

The privacy position, stated plainly

AdBubbles sets no cookie, stores no identifier, and collects no personal data from readers. There is no cross-page or cross-site identity, no fingerprint, and no profile. Country is read from a request header rather than from a stored address, and raw events are deleted after 30 days.

That is not a policy choice layered on top of the product; it is what the product is. Advertisers buy words on pages, so there is nothing for AdBubbles to know about the person reading. The privacy policy says the same in full.

What AdBubbles does not do

It does not choose which people see an ad. It does not follow a reader from one page or site to another. It does not promise a result. A publisher's dashboard reports what happened on their own pages, and an advertiser's reports what happened to their own words.

Seeing it before committing to it

A publisher account and the embed cost nothing, and a verified site can be crawled to show which of its words are currently sellable. An advertiser can build a campaign and see availability before paying.

For publishers   For advertisers