how we handle your data
privacy
last updated: 2026-05-04. plain language. no dark patterns.
tl;dr
- we keep what you send (chats, DMs, follows, profile, vibe).
- chat scrollback is auto-hidden after 12 hours.
- DMs and group rooms can be set to auto-hide sooner (30 min / 1 hr / 6 hr / 12 hr / 24 hr) — that hides them from your chat view.
- on the database side, every chat & DM message is physically deleted after 7 days, no exceptions. up to that 7-day window we retain the rows for safety / abuse review.
- no analytics. no ad pixels. no third-party trackers.
- only thing we send out is your data to supabase, our backend.
what we collect
when you use chill map, we store the following on supabase.com, our backend:
- account — email, chosen handle, display name, optional avatar and bio. email is private and only used to log you back in.
- vibe sessions — your chosen vibe and city for each 60-minute check-in. auto-deleted from the database after the session expires.
- chat messages — what you write in world / country chat, timestamped, tied to your handle. anonymous messages carry only an ephemeral 4-character handle.
- DMs and group rooms — direct messages between you and other mutuals, plus rooms you're in. each thread / room has an auto-hide setting (off by default; you or any participant can pick 30min / 1hr / 6hr / 12hr / 24hr) that hides messages from both participants' chat views past that window. on the DB the rows are kept for up to 7 days for safety / abuse review, then physically deleted by a cron sweep.
- follow graph — who you follow, who follows you.
- random match coordination — while you're searching for a random chat partner, we keep your handle, vibe, and a temporary PeerJS id in a pool so others can find you. cleaned up automatically after 5 minutes.
- local-only preferences — skin choice, map / globe view, last seen notification timestamp. these stay in your browser's localStorage; they never leave the device.
opt-in: translation.tapping "translate" on a chat message sends just that one message to api.mymemory.translated.net(a free public translation service) and receives the translation back. nothing else — no author info, no DMs, no profile data. messages you don't tap translate on never leave chill map.
what we don't collect
- no google analytics. no facebook pixel. no posthog. no sentry.
- no fingerprinting, no IP-based geolocation database lookups.
- no cookies set by third parties from inside chill map. supabase sets its own auth cookies, scoped to its own subdomain.
- random match voice calls go peer-to-peer (WebRTC). the call audio never touches our servers — only the signaling handshake (a few bytes of "find me" coordination) does.
how long we keep things
- chat scrollback — visible to users for 12 hours per message; on the DB the row is kept for up to 7 days, then physically deleted by an hourly cron sweep.
- DM / room messages — visible to participants indefinitely, OR until the auto-hide TTL you set elapses (30min / 1hr / 6hr / 12hr / 24hr) — that's a render-time filter, the row stays in the DB. on the DB every message is physically deleted after 7 days, no exceptions, by an hourly cron sweep. the 7-day window is the worst-case we ever retain anything.
- vibe sessions — auto-deleted 60 minutes after start.
- random match pool entries — 5 minutes max.
- profile / follow graph — kept until you delete the account.
who can see it
- chat messages — anyone using chill map (it's public chat).
- DMs / group rooms — only the participants. enforced at the database level via row-level security.
- follower / following lists — counts are public, full lists are visible only to the account owner (your privacy on who you actually engage with).
- operators — chill map's administrators (the project owner) have database access via the supabase dashboard, the same way any web service operator does. we do not read DMs as a routine; we only access them for abuse / safety investigations or by your explicit request.
demo accounts
while chill map is small, we keep a handful of pre-baked seed accounts (marked with a demo tag in the UI) that occasionally post short ambient messages so the map doesn't feel empty. they're not real people, they don't read your messages, and once enough live users join we turn the auto-posting off.
your controls
- edit name, bio, avatar from the profile menu.
- set DM / room auto-delete from the picker in each thread's header.
- delete a session by clicking "end" on the active vibe.
- account deletion or full data export — email
privacy@chillmap.app(replace with your real address). we'll respond within 14 days.
contact
questions? privacy@chillmap.app. we read every one.