Privacy Policy
1. The short version
- No accounts. You never give us a name, email address or password.
- Your spots, catches, photos and Coach chats are stored only on your phone. Deleting the app deletes them.
- Location leaves your phone only rounded, to a grid cell of 0.1° (about 11 km), except a private spot sent for a game plan, which is rounded to 0.01° (about 1 km) and sent without its name.
- Fish photos, game plan and Coach requests go through our server to Anthropic (Claude) to be answered. Our server does not store them.
- Purchases are handled by Apple or Google and RevenueCat, using a random app ID, not your identity.
- No ads, no tracking, no selling of data. The only usage numbers we collect are anonymous counters: an event name and the app version.
This policy explains what the Bitecast app (“Bitecast”, “we”) sends from your phone, to whom, why, and how long anything is kept. It covers the Bitecast iOS and Android apps and our server (the “Bitecast API”, which runs on Cloudflare).
2. No accounts: the random app ID
Bitecast has no sign-up or login. The first time you open the app it creates a random identifier (a UUID) and keeps it on your phone. It is not derived from your device, your name, your email or any advertising identifier.
The app sends this ID with every request to the Bitecast API and to RevenueCat. It is used only to:
- know whether you have Premium (your subscription is linked to this ID, not to you);
- count your free and daily AI uses, and limit how often requests can be made (abuse protection);
- remember the home spot cell of a free plan (section 5).
Deleting the app deletes the ID. A reinstall creates a new one; “Restore purchases” links your store subscription to the new ID.
3. Location
With your permission, Bitecast reads your phone’s location to show the forecast and the map around you. The precise position stays on your phone. When the app asks our server for data, it sends only:
- a 0.1° grid cell (about 11 km), for forecasts, the species in your area, spot search and a free plan’s home spot;
- a map area rounded to 0.1°, to list public fishing spots on the map;
- for a game plan or Coach answer about a private spot you added: only the spot’s type (for example “pier”) and its position rounded to 0.01° (about 1 km). Its name and exact position are never sent.
Location is used for the app’s features only and is not linked to your identity. You can refuse location access and pick a place on the map instead.
4. What the app sends, and to whom
4.1 Forecasts, spots and species (Bitecast API)
To show forecasts, scores, tides, water temperature, public spots and the species near you, the app sends the Bitecast API the grid cell or map area (section 3), the species you selected, the date or time slot, a spot search text you type, the app ID and the app version. The background refresh, if you allow notifications, sends the same forecast request for your saved places.
To build the forecast, our server asks public data services for the grid cell’s centre, never your position, and never with your app ID: MET Norway (weather), NASA POWER (past air temperatures), NOAA CO-OPS (tide predictions, by tide station) and NOAA CoastWatch (sea surface temperature). Public spots come from OpenStreetMap and species ranges from GBIF; both are stored on our server in advance, so your requests are not sent to them.
4.2 AI features: Snap, game plans and Coach (Anthropic)
These features are answered by Claude, an AI model from Anthropic, PBC. The request goes from the app to the Bitecast API, which forwards it to Anthropic and returns the answer. Our server does not store the photo, the request or the answer.
- Fish identification (Snap): the photo, resized to at most 1568 pixels on the long side and with all EXIF data (including GPS) removed, and the grid cell. Anthropic receives the photo and a list of species found near that cell, not the cell itself.
- Game plan: the grid cell, the date, the species, your units, your angler profile if you set one (method and experience), the spot (a public OpenStreetMap spot by its ID, or a private spot as in section 3), up to five public backup spots with their scores, and, for Premium, an anonymous insights summary (below). Our server adds the forecast for that cell and day.
- Coach: your question and the conversation so far (sent from your phone each time, because it is stored only there), with the same context as a game plan.
- Anonymous insights summary: for Premium, a sentence of at most 300 characters that the app writes from your own catch log, such as “this angler catches the most bass at dawn and in light wind”. It contains no numbers, places, dates, photos or other catch details.
Anthropic processes this data under its commercial terms. Under those terms Anthropic does not use it to train its models, and keeps it only for a limited period as described in Anthropic’s Privacy Policy.
4.3 Subscriptions (Apple, Google and RevenueCat)
Payments are made with Apple (App Store) or Google (Google Play). We never see your payment details, name or email. The app uses the RevenueCat SDK to show prices and manage your subscription. It sends RevenueCat your random app ID, your purchase and subscription records from the store, and basic technical data (such as the app version, operating system, country of the store and IP address) as described in RevenueCat’s Privacy Policy. Our server asks RevenueCat whether an app ID has Premium, and RevenueCat notifies our server when a subscription changes.
4.4 Map tiles (OpenFreeMap)
The map’s background is loaded directly from OpenFreeMap. Like any website, it receives standard requests: your IP address and which map area you are viewing. These requests do not include your app ID and do not go through our server.
4.5 Anonymous counters
To understand whether people finish onboarding and how the paywall performs, the app reports a few events, such as “onboarding step 2”, “paywall viewed”, “purchase completed” or “plan generated”. Each is stored only as the event name and the app version. The app ID travels with the request only to limit abuse and is not stored with the event; nor are your IP address or location.
5. What our server keeps
The Bitecast API keeps only the following. None of it contains your name, contact details, precise location, photos, catches or conversations.
| What | Linked to | Kept for |
|---|---|---|
| Premium status and expiry date | app ID | until it changes; a record from a direct lookup with RevenueCat for 10 minutes |
| A free plan’s home spot: the grid cell and when it was set | app ID | until changed |
| Number of free identifications used (3 in total) | app ID | indefinitely, so the free allowance is not reset |
| Daily counts of AI uses, and hourly counts of subscription refreshes | app ID | 2 days, and 2 hours |
| Daily count of free identifications from one network | IP address | 2 days |
| Short-lived request rate limits | app ID or IP address | about a minute |
| Weather, tide, sea temperature and climate data, and daily mean temperatures | grid cell or tide station only | from hours to 30 days; daily mean temperatures per cell are archived to improve water temperature estimates |
| Anonymous counters (section 4.5) | nothing | as aggregated statistics |
6. Logs
Our server writes one line per request with only the path (for example /v1/forecast), the status code, how long it took, the grid cell and AI token counts. It never logs request contents, query strings, photos, questions, your app ID or your IP address. Cloudflare’s own request logging is turned off for the Bitecast API. Cloudflare, as our hosting provider, necessarily processes the network traffic (including your IP address) to deliver it.
7. Data on your phone
Your catch log and photos, saved and private spots, game plans, Coach conversations, the learned patterns behind your personal insights, your settings and the cached forecasts are stored only in the app’s storage on your phone. They are not backed up to our server. Deleting the app deletes them.
8. No tracking, no ads
Bitecast contains no advertising, no advertising identifiers and no third-party analytics or tracking SDKs. We do not sell or share your data for advertising, and we do not combine it with data from other companies.
9. Who we work with
- Cloudflare hosts the Bitecast API and this website.
- Anthropic answers fish identification, game plan and Coach requests (section 4.2).
- RevenueCat, Apple and Google handle subscriptions (section 4.3).
- OpenFreeMap serves map tiles (section 4.4).
- MET Norway, NASA POWER, NOAA CO-OPS and NOAA CoastWatch provide weather, climate, tide and sea temperature data for grid cells (section 4.1). They receive no data about you.
Some of these providers are in the United States or other countries than yours; they process data under their own privacy terms and appropriate safeguards.
10. Your choices and rights
- You can use Bitecast without location access, without notifications and without the AI features.
- You can delete catches, saved spots and Coach chats in the app, or delete everything by deleting the app.
- Because we have no account and no contact details, we cannot identify you from the records in section 5. If you want them removed or have a question about your rights (for example under the GDPR or CCPA), contact us (section 14). Depending on where you live, you may also complain to your data protection authority.
We process the data above to provide the app you asked for (including your subscription) and, for abuse limits and anonymous counters, on the basis of our legitimate interest in keeping the service working and affordable.
11. Children
Bitecast is not directed at children under 13 (or the minimum age in your country) and we do not knowingly collect data from them.
12. Security
All traffic between the app and our server is encrypted (HTTPS). Server secrets are stored as encrypted secrets and never in the app.
13. Changes
If we change what the app sends or keeps, we will update this page and its effective date before the change ships.
14. Contact
Questions or requests: privacy@bitecast.app