Privacy
Last updated 26 October 2026.
Short version: using this site needs no account, and it runs no analytics and no tracking scripts, and it shows no ads. An account exists only if you buy a paid plan, and it holds the few things listed below. The server keeps a short operational log that deliberately drops the query string, so if you ask what is happening near you, your coordinates are not written down.
The server also keeps one number per day: how many different browsers opened the map or one of the reference pages. It tells browsers apart by a scrambled code made from the network address and browser name, mixed with a random value that is held only in memory and thrown away at midnight UTC. Only the day's total is saved, so no visitor can be picked out or followed from one day to the next.
Who runs this
Rift is run by one person as a personal project. It is self-hosted, not operated by a company.
Questions about this page, or about what is held about you: [email protected]. That address exists for this purpose and is read by the person who runs the site.
You do not need an account
Reading this site, and getting free alerts, does not create an account and there is nothing to sign up for. Warnings reach free and paid readers at the same time.
If you turn on free alerts
Turning on alerts in the app stores, for that one browser, and linked to no name or email:
- The push address your browser hands out for this site. Only your browser's own push service can deliver to it.
- What you asked to hear about: countries, kinds of event and how severe.
- Your quiet hours, and your offset from UTC so they mean your night. The offset is one of about 38 values worldwide, not your city.
- If you set one, a home point rounded to about 1 km, and a radius.
Turning alerts off deletes all of it, and so does your browser's push service telling the server the address no longer exists.
If you buy a paid plan
Paying creates an account. The only other way one is created is a Mission Control payer adding your email address to their plan. It holds:
- Your email address, the one you paid with. It is used to send sign-in codes and, only if you switch it on, the morning summary.
- Your plan: which plan, when it ends, and Stripe's customer reference for you. Card details go to Stripe and never reach this server.
- Who shares your plan, on Mission Control: the email addresses the payer added, each linked to the payer's account. The payer sees those addresses; nobody sees anyone else's places. Removing someone deletes their account.
- The places you name: a name you choose, a point rounded to about 1 km, a radius, and which kinds of alert and how serious you picked for each one. Your alerts on any signed-in device use them.
- The morning summary setting: on or off, your time zone (its name, like America/Edmonton, and its offset) so it arrives at 7 in the morning your time, and when the last one was sent. If you connect Discord or Slack, the webhook link you paste too; this page never shows it back.
- Saved map views: a name you choose and the map setup it restores.
- How many AI briefs you asked for today: one count per day, so the daily limit works. Not which countries. Earlier days are deleted the next time you ask.
- Which of your devices get alerts: a device that turns on alerts while signed in is linked to the account, so your places reach it.
- Passkeys, if you add any: a public key for each, when you added it and when you last used it, and a random account number the passkey carries instead of your email. The private half never leaves your device, and nothing stored here can sign anyone in by itself.
Signing in sets one cookie, eh_session. It lasts 30 days, only the
site's own server can read it, and signing out removes it. Asking for an email code
sets a second, eh_login, for 15 minutes, so the code works only in the
browser that asked for it; adding or using a passkey sets eh_passkey for
5 minutes while it runs. The server keeps only scrambled copies of these and of each
code, and a code works once, for 15 minutes, with five tries. The site also notes in your browser's localStorage when your plan
ends, so the pro colours load without asking the server on every page.
Places and settings stay if your plan ends, paused, so renewing brings them back. Email [email protected] to have the account deleted: that removes the email, places and settings from this server. Stripe keeps its own payment records for as long as the law requires it to.
The operator login
An admin login exists for the operator only. Its cookie is set only after that login, and ordinary visitors never receive it.
What is kept on your device
- Your display preferences, in
localStorage: which layers and filters you had open, and similar UI state. This stays in your browser. It is never sent to the server, and clearing site data removes it. - An offline cache, via a service worker, so the page still opens when your connection drops. Live alert data is deliberately never cached, so you cannot be shown a stale alert.
What the server records
One line per request, containing: the time, the request method, the path, the response status, the size, how long it took, and your browser's user-agent string.
The query string is stripped before the line is written. That is a deliberate control,
not a formatting choice: /api/v1/events/nearby takes your coordinates as
?lat=&lon=, and this is what stops them being recorded. The referring
page is dropped for the same reason, because a referrer can carry someone else's query
string.
Stated rather than hidden: when the backend is unreachable, the web server's error log writes the full request line, query string included, and no log setting can change that. It is rare. Over seven days measured in August 2026, that log produced two lines in total across every path, and none of them carried coordinates. These logs exist to keep the service running. They are not exported, not analysed, and not used to build any profile.
If you use "what is near me"
Your browser asks your permission first, and you can refuse. If you allow it, your coordinates are sent to this server to answer that one question: which events are within a given radius. They are used to run the query, returned to you as the centre of the result, and never stored. Nothing about your location is written to any database or log.
YOUR AREA works the same way. The spot you set, or your browser's location if you allowed it, is sent to about 10 metres to ask whether an official warning covers that exact spot, and to about 1 km for the forecast. A warning's outline can end inside one kilometre, so a rounder point could answer for the wrong side of it. Neither is stored.
Third parties your browser talks to
These are direct connections from your browser, so each one sees your IP address. They are listed with the condition that triggers them.
| Who | What for | When |
|---|---|---|
| Cloudflare | Delivers the site and terminates HTTPS | Every request |
OpenFreeMap (tiles.openfreemap.org) | Map tiles and map fonts | Whenever the map is shown |
Iowa Environmental Mesonet, Iowa State University (mesonet.agron.iastate.edu) | NEXRAD weather radar imagery, United States coverage | Only while the radar layer is switched on |
NOAA nowCOAST (nowcoast.noaa.gov) | Lightning strike density map tiles | Only while the lightning layer is switched on |
NASA GIBS (gibs.earthdata.nasa.gov) | Satellite map tiles: world rain, sea temperature and clouds | Only while one of those layers is switched on |
| Nominatim / OpenStreetMap | Turning a place name into coordinates, and the reverse | Only when you search for a place or open an event |
Photon by komoot (photon.komoot.io) | Finding a place when the name is misspelt, from the same OpenStreetMap data | Only when you search for a place; it receives the words you typed |
YouTube (youtube-nocookie.com) | Embedded live streams | Only when you open a stream |
| Stripe | Takes payment for paid plans, on Stripe's own page | Only when you choose to buy, cancel or change a plan |
One more third party does not talk to your browser but handles your data for paid plans: Resend sends the sign-in code and morning summary emails, so it receives your email address and the content of those emails. If you connect Discord or Slack, that service receives the same summary in the channel you chose.
Every alert and hazard feed is fetched by this server on a schedule, not by your browser, so the agencies behind that data never see you.
Your rights
If you are in the UK or EEA you have the right to ask what personal data is held about you, to have it corrected or deleted, and to complain to your data protection authority. The honest position here is that this site holds almost nothing to ask about. Without a paid plan: no account, no profile, no identifier of this site's that follows you between visits (Google's ad cookies are Google's, above), and logs that drop the revealing part on purpose. With one: the account items listed above, and nothing else. Get in touch and you will get a straight answer about what does exist.
Changes
The date at the top changes when this page does. Anything that alters what is collected gets described here rather than quietly reworded.