Drop one script tag on your site. Instantly see every visitor as a glowing avatar wandering through your pages — mapped as rooms in a 3D house.
No analytics account, no cookies, no GDPR headache. Just a WebSocket and a few lines of code.
Map your URLs to room names — / = Home, /downloads = Downloads. Takes 30 seconds.
Copy one <script> tag into your site's HTML. Works with any stack — static, React, Next.js, WordPress.
Go to siterooms.live/your-id and watch avatars appear in real-time as visitors browse your site.
Start free. Upgrade when you need more. Cancel anytime.
All plans include anonymous tracking · No cookies · GDPR friendly · Read more →
Everything you need to know about siterooms.live.
Short answer: Yes — by design, not just by policy.
siterooms.live was built with privacy as a technical constraint, not an afterthought. Here is exactly what happens when someone visits your site:
s-x7k2m9) that is stored only in sessionStorage — it is deleted the moment the browser tab is closed. It does not survive page reloads between sessions.Genuinely real-time — sub-second latency. The tracker script opens a persistent WebSocket connection to the server. When a visitor navigates to a new page, the event is pushed instantly and the avatar moves within milliseconds. There is no polling, no delay.
A room is a visual representation of a page or section of your website in the 3D house. You define the mapping — for example /downloads.html = Downloads — and the system groups your pages into rooms. Multiple similar URLs can share one room (e.g. all /blog/post-* URLs map to a single Blog room).
Visitor session data (room, current page, last-seen timestamp) lives exclusively in the server's memory. It is never written to any database. If the server restarts, all session data is cleared. Sessions older than 3 minutes are automatically removed. Your site configuration (rooms mapping) is stored in Supabase.
No. When you register your site, you provide your domain (e.g. hyperate.io). The server checks the Origin header of every incoming WebSocket connection — if it does not match your registered domain, the connection is rejected immediately. Someone using your Site ID from a different domain gets nothing.
Yes — enter the Konami Code while the viewer is open to toggle the debug log:
↑ ↑ ↓ ↓ ← → ← → B A
The debug log shows live WebSocket events, connection status, avatar pruning and more. Enter the code again to hide it. This works on any viewer page.
The music tracks included in Siterooms were generated with ElevenLabs Music, which has secured licensing agreements with Merlin Network and Kobalt Music Group. On a paid plan, ElevenLabs grants commercial use rights for generated output.
For personal or internal use — a private dashboard, your own screen — you're covered by the ElevenLabs commercial license.
For public performance — Apple TV in a waiting room, a screen in a shop, a public event — the situation depends on where you are:
In practice: for a small internal dashboard or your own office screen, nobody will come after you. For a commercial public setting (hotel lobby, retail store, event venue), we recommend checking with your local collecting society to be safe.
We are not lawyers. This is our best understanding of the situation — not legal advice. When in doubt, consult a legal professional familiar with music licensing in your country.
Yes — on the Business plan you will be able to use a custom subdomain like live.yourdomain.com instead of siterooms.live/your-id. This feature is currently in development and will be available soon.
When it launches, setup will take 2 minutes — just add a CNAME record at your DNS provider pointing to www.siterooms.live and enter your domain in the Billing settings.
/sitemap.xml, /sitemap_index.xmlsiterooms.live/your-id/ is the fallback (Home) room.