Understand
Some widely used AI services are not in the registry. This is not an oversight: in every case, detecting them would produce a wrong figure, and a wrong figure is worse than a stated absence.
Google serves its AI from the same addresses as Drive, Gmail, Maps and Cloud Storage. The eight addresses of generativelanguage.googleapis.com are exactly those of translate.googleapis.com and storage.googleapis.com.
Since detection works by address — which is what makes decrypting unnecessary — recognising them would amount to billing a photo backup as inference. These entries did were removed from address-based detection after measurement, for want of a signal separating them from the rest without reading traffic. Used in their web pages, Gemini and AI Studio are now counted by the browser extension; NotebookLM, Vertex AI and calls made by a program remain absent.
meta.ai is served by Facebook's infrastructure and shares its addresses with the "log in with Facebook" button and the audience measurement tools — verified over both IPv4 and IPv6. The collision changes from one resolution to the next, which made the false positive intermittent, and so harder to spot than a constant one.
The service has therefore left the registry, and the history it produced is erased from machines at start-up: consumption known to be imaginary has no business staying in the totals. A browser, however, sees the full address and can tell them apart: Meta AI is counted on machines that have installed the extension.
When an image or video generator is served by a platform that also hosts thousands of ordinary websites, its address is not its own. The unrelated site next door would be counted as a generation — and for a service billed on volume received, such a false positive is expensive.
Several entries left the registry for this reason. Three have since come back, cut down to their API address alone, which is their own: that is the path generation travels, and the marketing site is no longer counted.
Its endpoints are specific to each customer — <resource>.openai.azure.com — so there is no fixed address detection could recognise. Since the registry can no longer be edited on the machine as of 0.2.17, Azure OpenAI remains absent, except when used directly in a page on its own domain, which the browser extension recognises.
Otter, Fireflies and their kind send their payload the other way: you upload audio and receive text. But bytes sent are only billed as context read, for a client whose ratio has been measured, and never for media: uploaded audio is not tokens. Adding them would show them at zero, which would mislead more than leaving them out.
Canva, Notion, Figma, Adobe, Microsoft 365, Gmail: each has slipped an AI assistant into its tool, and each serves it from the same addresses as everything else — the document, the image, the mail. On the wire, a sentence generated by Notion's assistant looks like a Notion page loading.
Address-based detection cannot tell them apart, and telling them apart would mean reading the traffic, which CarboneWatch refuses by design. These uses are therefore out of reach — only Copilot in Microsoft 365 on the web is counted, by the browser extension — and they probably weigh more every year: this is the widest limit of the scope. Only a dedicated signal on the vendor's side — or its declaration — would close it.
It should be said plainly: the shared footprint published on this site only counts Gemini usage, one of the most used AI services in the world, on machines equipped with the browser extension. Elsewhere, it does not see it. It therefore undercounts, and it undercounts by an unknown amount — neither this site nor the application can quantify what is not detected.
The total remains a sum of usage observed on the machines that share it, not an estimate of the worldwide footprint of AI. It never claimed to be, and this page is where that is written down.
A signal separating inference from the rest without reading anything: a dedicated address prefix, a hostname used for nothing else, a distinct port. The day one of those exists for an absent service, it returns to the registry in the next release — under a new identifier, and with no history. A retired identifier is retired for good: taking it back would revive, on machines left behind, the wrong figures it once produced.