Documentation
Coming from another tool
Reading the reports
Count what matters
Machine access
Make Kehai count for you.
What the snippet does on its own, what you can teach it, and where the numbers surface. Ten minutes of reading covers the whole product.
What Kehai is
Kehai is web analytics that counts what happened on your site without identifying who it happened to. One small script, no analytics cookies, and no visitor identifier in browser storage. The script reads page and device information. Assess consent for your installation with the field inventory in the cookie and storage statement.
The name is Japanese. 気配 means sensing a presence without seeing it, and that is the entire design: you know somebody was there, what they read, where they came from, and what it led to, without ever holding who they were.
Three commitments shape every number in the panel:
- Measured, imported, or modeled. A figure is measured by the snippet, imported from your old tool, or modeled by the forecast, and the three are labeled and never summed together. No sampling, no "estimated" rows quietly mixed in.
- A visitor code is scoped to one UTC day. A new salt is used at midnight UTC, and visits end at that boundary too. Recorded events remain for the site's retention window. How counting works has the details.
- Everything leaves. Every screen downloads, every report answers over the API, and the whole site streams out raw. Your numbers are yours, including on the day you go.
How the pieces fit
Kehai is three moving parts, and only the first is required. Everything else in these docs teaches one of them.
One deferred tag. Pageviews, visits, engaged time, outbound clicks, and file downloads, with nothing to configure, and Core Web Vitals once the performance module is on.
02You name eventsA signup, a plan chosen, a quote requested: one attribute on the element, or one call from code, with properties and an optional value.
03Your server reports revenueOrders travel server to server with the field names GA4 taught your shop, because a browser cannot be trusted with prices.
Behind all three sits one privacy model: no cookies, no browser storage, and visitor and visit codes that start fresh each UTC day. These boundaries shape the counts. They do not, on their own, settle whether your installation requires consent.
First data in two minutes
Paste the tag into the head of every page you want counted, then open your site in a browser. The first pageview appears in the panel within seconds.
<script defer src="https://stats.kehai.io/k.js?site=YOUR_SITE_ID"></script>The tag above is the shape, not your tag. The panel's Install screen generates yours with your site id in its URL, then watches for the first event and tells you what arrived, or why something was refused.
The whole contract of that tag, its optional attributes, and the platform-by-platform places to paste it are on Install the snippet.
Everything in these docs
Start here
Coming from another tool
The panel
Reading the reports
Count what matters
Revenue
Machine access
The contract
Help
If you are a machine
The REST contract lives at app.kehai.io/api/v1/openapi.json, generated from the same registry the panel reads, so it cannot describe a report that is not there. Assistants can read a site's reports directly over MCP.
kehai.io/llms.txt is a short index for language models. It links to the product pages, documentation, pricing, and policies.