Privacy
Privacy · updated 2 October 2026
Braided is a free, non-commercial map of Aotearoa built on open public data. No accounts, no advertising, no analytics, no trackers. Almost everything happens on your phone or in your browser.
The short version
The only thing Braided ever sends us about you is a push notification token, and only if you create a river alert. Create none and we hold nothing about you at all.
Your location, saved places and downloaded regions stay on your phone or in your browser. There is nowhere in the app to send them.
Reading the map
The app reads static files from our own content delivery network: rivers, huts, tracks, tides, forecasts and map tiles, fetched as plain requests for public files with no account, no cookie and no identifier. As with any web server the network sees the IP address asking; we do not receive or keep those logs.
It never calls a council, DOC, GeoNet, LINZ or a weather service directly, so browsing the map tells those agencies nothing about you.
One thing is asked live rather than read from a file: when you open a hut or campsite that takes bookings, the app asks our server which nights are free, and our server asks DOC's booking system. The request carries the hut and the month, and nothing else: no account, no cookie, no identifier. We keep no record of it, and DOC sees our server asking, not you. As with alerts, we count requests per IP address to throttle abuse; those counts live in memory for a minute.
The same map runs in a browser at app.braided.co.nz. The page itself comes from Cloudflare too, on the same terms: no account, no cookie, no analytics.
Alerts, only if you create one
Set an alert on a gauge and the app asks permission to notify you, gets a push token from Apple or Google, and registers it with our alerts service. We then store:
- the push token, a random string addressing this installation on this device
- the platform, iOS or Android
- when we first saw it, when we last heard from it, and how many deliveries have failed
- each river alert: which gauge, which condition, whether it is armed, when it last fired
- an aurora alert, if you set one: the name of the place you picked, the 14 km forecast square it sits in, the Kp it needs, and the last night it sent
- each notification sent: the time, the reading that triggered it, its wording, and whether Apple or Google accepted it
The aurora alert is the one place a location of any kind is involved, and it is not yours: you pick a place by name, and the app sends the 14 km square of the weather forecast grid that place falls in: the same square the forecast is already published for. Where your phone is is never sent, then or at any other time.
No account, no email address, no name, no device identifier beyond that token, and nothing linking two installations to one person. The token is also the secret authorising reads and changes to your alerts, so it travels in a request header, never in a web address. We count requests per IP address to throttle abuse; those counts live in memory for a minute and never reach a disk or a log.
Who else handles it
A notification goes from our server to Expo's push service, then Apple's APNs or Google's FCM, then your phone; the token and its text pass through all three. The alerts service runs on one rented virtual server behind Cloudflare, which also serves the map files. Both sit outside New Zealand, so the little we hold is stored and processed overseas.
Links to DOC, GeoNet, FENZ or Civil Defence hand you to your browser and those sites' own terms. The rate-the-app prompt is Apple's or Google's; we are told nothing about it, not even whether it appeared.
What stays on your phone or in your browser
- Your location, if you grant it: used to centre the map and say how far a place is. Never sent anywhere.
- Saved places.
- Downloaded regions: map, terrain, gauges, huts, tracks, forecasts and photos.
- A cache of the published files, and a counter deciding whether to ask you for an App Store review.
Deleting the app removes all of it.
In a browser there are no alerts and no downloaded regions, so we hold nothing about you at all. Your saved places, theme, last map view and a few display choices are kept in that browser's own storage for app.braided.co.nz, and clearing the site's data removes them. The browser asks before it shares your location, which is used the same way and never sent.
How long we keep it
- Your token and alerts: as long as you keep the alerts.
- A token Apple or Google reject 3 times in a row, which is what happens when the app is deleted, is removed with every alert on it.
- A device with no alerts we have not heard from for 180 days is removed.
- The record of notifications sent is deleted after 90 days.
Everything else in our database is measurements of rivers, rain and the sea. None of it is about you.
Deleting it
The Alerts screen has “Delete my alerts and forget this device”: it removes the token, every alert on it and the record of what was sent, at once and for good. Deleting one alert removes just that one; deleting the app stops the notifications, and the token is cleaned up here the next time a delivery is rejected.
The website
braided.co.nz, the landing page, is separate from the app (on a phone or at app.braided.co.nz), and the one place any measurement happens. It uses Cloudflare Web Analytics: page views counted with no cookie and no device identifier, following nobody between sites. We see the page, the referrer, the country and the kind of browser, never an individual. Nothing you do there is stored, and it asks for nothing.
One thing there leaves the site: the koha button on braided.co.nz/support-us opens a payment page belonging to Stripe, and Stripe's own privacy policy governs that page. We never see a card number. What reaches us is the amount, the date, and whatever name or email address you chose to give Stripe: one voluntary payment, linked to nothing else here. The app is not told: it cannot know whether you have given anything.
Nothing of Stripe's runs on that page. The button is an ordinary link, so Stripe first sees your browser when you click it and land on their page, not while you are reading ours. No page on this site loads anything from a third party.
What we never do
The app carries no advertising network, no analytics, no crash reporting and no attribution code. We do not sell, rent or share anything for marketing, we build no profile of you, and nothing here makes an automated decision about you. Braided is free and non-commercial: no paid tier, no subscription, and no payment information in the app at all. The voluntary koha lives on the website and Stripe handles it end to end.
Your rights
The Privacy Act 2020 gives you the right to ask what personal information we hold about you and to have it corrected or deleted. Here that is a push token, the alerts on it and what we sent to them, and the app shows and deletes all of it without involving us.
If you would rather ask, email hello@braided.co.nz; we will need the push token, because it is the only thing we hold and the only way to find anything. You can also complain to the Office of the Privacy Commissioner at privacy.org.nz.
Changes, and who we are
If this policy changes, the date at the top changes with it and the new wording ships in the app; if anything material changes, the app will say so. Braided is built and run by one person in Aotearoa New Zealand. Questions: hello@braided.co.nz.