Last updated: September 19, 2026
Translations are provided for convenience. If a translation conflicts with the English version, the English version controls, except where applicable law requires otherwise.
FeyCast is a weather service operated by Marcus Fey. This policy applies to the native FeyCast iPhone and iPad app, the native FeyCast Android app, and the public website at feycast.com. It explains what data is handled, how it is collected, why it is used, where it is sent, how long it is kept, and how you can withdraw permission or request deletion.
The policy is available inside the app under Settings → Privacy Policy and from the applicable App Store or Google Play product page.
| Data | How it is collected | Why it is used | Where it goes |
|---|---|---|---|
| Device location and chosen places | From iOS, Android, or browser location permission, place search, map selection, saved places, or a shared link | Forecasts, radar, maps, air quality, tides, satellite passes, nearby features, geocoding, and alerts | Stored on-device; sent to FeyCast servers and relevant weather, map, and place providers; stored with an APNs or FCM token if you enable a location-based alert |
| Saved places, names, settings, units, and cached weather | Created as you use FeyCast | Remember preferences, restore the interface, and load data faster or offline | Normally on-device. A chosen location, name, or preference also leaves the device when required by notifications, station features, feedback, or a requested online feature |
| Notification token and alert preferences | Only after you enable an alert type and grant notification permission | Deliver weather, earthquake, tropical-storm, severe-outlook, and custom threshold alerts | Apple Push Notification service (APNs), Firebase Cloud Messaging (FCM), and FeyCast's notification server |
| Usage, network, and diagnostic data | Requests to FeyCast, operational telemetry, server logs, and website analytics scripts | Provide the service, measure use, diagnose failures, prevent abuse, manage data-provider cost, and improve reliability | FeyCast hosting and log storage; website analytics providers where applicable |
| Feedback and attachments | Only when you press Send in the feedback form or email us | Support, bug diagnosis, and product improvement | FeyCast support storage and email providers |
| Ambient Weather station data | Only when you connect a station | Find your station, display live readings, store history, and optionally publish the station | Your device, Ambient Weather, and FeyCast's station servers |
| Subscription information | Through Apple StoreKit or Google Play Billing when you view an offer, subscribe, restore, or use Premium | Show localized offers, determine trial eligibility, and unlock paid features | Apple or Google Play. From version 3.2.4, the apps send no purchase or subscription events to FeyCast. |
If you grant location permission, FeyCast may receive a precise or approximate device location, depending on your iOS settings. The app uses one-time location fixes when you choose My Location and when the app returns to the foreground. While the app is visible, it may also use a low-power location watch to keep My Location and the map marker current. FeyCast does not request “Always” location permission and does not run GPS continuously while the app is hidden.
Your current or selected coordinates and place name are stored on your device as a saved place. They are sent to FeyCast endpoints and, as needed, to weather, map, geocoding, radar, air-quality, tide, and satellite providers to return the feature you requested. Map providers also receive the map area and tiles requested by your device. You can use manual search without granting device-location permission, although the place you choose still has to be sent to retrieve its weather.
The iOS app may perform a background radar-manifest refresh using the last location already saved in the app. That task does not request a fresh background GPS fix, but it does send the saved coordinates to FeyCast's radar service.
FeyCast uses shared functional caches for weather, geocoding, radar, climate, air-quality, tide, and satellite responses. Cache keys may use exact or rounded coordinates. These caches are organized around places and responses, not user accounts, but they can retain a coordinate or location-specific response after the original request. Freshness periods vary by dataset; expired files can remain until operational cleanup, and long-lived climate or station-metadata caches may be retained longer.
When you choose or open a place, FeyCast also increments an aggregate city-popularity counter used to pre-warm popular weather caches. The counter rounds coordinates to approximately a 5 km grid and keeps a city name and count. The counter itself does not store an IP address, user agent, device identifier, or per-search timestamp.
On Android, FeyCast requests foreground location only when you ask for My Location or another feature that needs it. Android lets you provide approximate or precise location. FeyCast does not request Android background-location permission. You can deny location and choose places manually.
The Android app uses Firebase Cloud Messaging for optional notifications. Firebase may create a Firebase installation ID and registration token for the installed copy of FeyCast. These identifiers are used to route notifications and secure the notification registration. They are not advertising identifiers and are not used for advertising or cross-app tracking. Firebase retains installation IDs under its published retention practices.
The Android app uses Google Play Billing for Premium subscriptions. Google Play processes the Google Account, payment method, localized price, trial eligibility, purchase status, subscription management, and refunds. FeyCast's billing bridge reads product details and current purchase status, acknowledges completed purchases, and stores a short-lived on-device entitlement result for offline use. FeyCast does not receive or store full payment-card or bank details, and the current Android app does not send the Google Play purchase token to FeyCast's servers.
Android permissions can be withdrawn in Android Settings → Apps → FeyCast → Permissions. Notification settings can be changed in FeyCast and in Android's app notification settings. Premium can be managed or canceled in Google Play's subscription settings.
iCloud backup is optional and available in the native iOS app. FeyCast creates a manual backup when you tap Back Up Now, and it saves a recovery snapshot immediately before you confirm a Replace restore so the prior device setup remains recoverable. Automatic Backup is off by default; if you enable it, FeyCast creates a new backup after an included saved place or selected setting changes. Backups are versioned, with up to 10 snapshots retained so you can choose a copy to restore. Automatic Backup creates restorable copies; it does not silently replace the data on another device. A backup includes the exact latitude and longitude, name, and any alias for each included saved place, along with selected display, unit, map, chart, language, and other interface settings. It does not include live My Location coordinates, weather caches, notification permissions or subscriptions, or Ambient Weather credentials. The backup is stored through Apple in the private CloudKit database associated with your Apple Account and is available to FeyCast on devices using that same Apple Account. FeyCast does not copy the backup to FeyCast's own servers. Turning off Automatic Backup or deleting FeyCast from a device does not delete existing iCloud backups; use the in-app backup deletion control to remove them. Apple's handling of iCloud and CloudKit data is governed by Apple's Privacy Policy.
Notifications are optional. FeyCast requests notification permission only after you turn on an alert type. When enabled, the iPhone app sends an APNs device token and the Android app sends an FCM registration token, together with the platform, language, delivery environment, and preferences needed for that alert, to FeyCast's notification server.
Before weather or hazard notifications are first enabled, FeyCast asks you to acknowledge a short safety warning. The app stores the acknowledged warning version on your device so it does not repeatedly show the same warning. FeyCast also records the warning version, acknowledgment time, app language, and app version on the existing push-registration record associated with the APNs or FCM token. This does not create an account or a new identifier.
The notification server stores these items under the APNs or FCM token. Subscription rows do not currently have a fixed inactivity-expiry period. They remain until the app successfully sends the relevant opt-out or unregister request, the token is removed during delivery cleanup where applicable, or we delete them in response to a request. If an opt-out fails while offline, the app records that a retry is needed and tries again when connectivity returns.
After an ordinary successful opt-out or invalid-token cleanup, FeyCast deletes the notification token, locations, alert rules, and delivery history. If the success response was lost, the server may need to authenticate a retry without letting another credential immediately reclaim that token. For that limited purpose, it can retain only a SHA-256 fingerprint of the token, a SHA-256 hash of the installation credential, and the removal time. This limited receipt contains no location or alert preference, is subject to a fixed row cap, and is deleted no later than seven days after removal. Reset to Defaults asks the server to erase both the active notification data and any such receipt immediately.
Revoking notification permission in iOS or Android stops the operating system from displaying alerts but does not by itself tell FeyCast's server to delete the subscription. Turn off every alert type inside FeyCast while online before deleting the app. Deleting FeyCast does not itself send an unregister request. If the app has already been deleted or an opt-out did not complete, contact us for deletion.
If you connect an Ambient Weather station, FeyCast keeps its keys and station secret in native secure credential storage, and its MAC address, name, coordinates and connection settings in the app's local storage. The Ambient keys and MAC address are sent in request bodies through FeyCast's server to query Ambient Weather and, when necessary, verify that the credentials control the station. The station secret is sent in request bodies to authenticate writes and listing changes, and in an authentication header when the owner retrieves unlisted history. FeyCast does not write the Ambient keys into its station database, but the keys pass through FeyCast's server and are sent to Ambient Weather.
Ambient Weather: The app sends station readings, without the Ambient keys, to FeyCast's station database. Stored fields include timestamps, temperature, humidity, dew point, apparent temperature, wind, UV, solar radiation, and rain. A hash of the station secret is stored to authenticate future writes. Station readings currently have no automatic deletion schedule and are not deleted merely because you disconnect the station. Contact us to delete stored station history.
If you separately turn on continuous public station sharing, FeyCast stores your Ambient Weather or Ecowitt application and API keys encrypted in private server files, separate from the station database. FeyCast uses them to collect numeric station readings about every 5 minutes, subject to Ambient Weather or Ecowitt availability, and keep your public listing active even when the app is closed. Existing station connections are not enrolled automatically. Turning continuous sharing or the public listing off removes these server-stored credentials and stops new server collection; readings already stored remain subject to the retention policy above. Ecowitt history starts with continuous sharing; earlier provider history is not imported.
Ambient Weather: If you turn on the public station listing, FeyCast publishes the station ID, which is derived directly from the Ambient device MAC address by removing its separators, along with the station name, searchable place description, and exact latitude and longitude so other people can discover it. While the listing is active, the related station readings can be retrieved through FeyCast's station-history service without the owner's station secret. Turning the listing off removes it from search and blocks new unauthenticated history requests after any short-lived public cache expires; it does not delete the stored readings or copies another person already retrieved. The owner can still retrieve private history using the locally stored station secret. An unrefreshed public listing and its unauthenticated access expire after 30 days; you may remove them sooner with the toggle. Do not enable the public station listing if you do not want the station's MAC-derived ID, name, position, and readings available to other users.
WeatherLink and Ecowitt connections keep provider credentials in native secure credential storage and send them in POST request bodies through FeyCast to query the provider. FeyCast caches normalized station details and current readings, without credentials; this temporary proxy cache is separate from saved station history. WeatherLink connections remain private. Publicly shared Ecowitt stations publish their provider station ID, name, searchable place description, exact coordinates and collected readings under the listing, access and retention rules described in this section.
When you press Send in the in-app feedback form, FeyCast receives the message, an email address if you provide one, and a screenshot if you attach one. A screenshot can contain weather, maps, station information, or a location visible on your screen.
The form previews the diagnostics sent with your message, including app version, current URL, active city, settings, language, display dimensions, time zone, and submission time. A URL can contain location or feature parameters. Older versions also send a user agent, which the server discards. The reply email is forwarded for replies and is not a separate field in the support log. Your message and screenshot may contain personal information you include.
FeyCast's support log and uploaded screenshot copy are automatically removed after 90 days. Each submission is also forwarded through email providers; that separate email copy can remain in the support mailbox or provider backups under the mailbox's deletion practices, the providers' backup lifecycle, and any applicable legal obligations. Deleting FeyCast's support-file copy may therefore not immediately remove every provider backup copy. You may request access to or deletion of a feedback submission; include enough information, such as the email used and approximate date, for us to locate it.
The native iPhone and Android bundles do not load FeyCast's Google Analytics or Umami web analytics scripts. They do make the network requests needed for weather, maps, alerts, feedback, subscriptions, and optional station features. Those requests can create the FeyCast logs and functional caches described here.
Version 3.2.4 removes AppsFlyer and Apple Ads attribution and sends no purchase or subscription events to FeyCast. Earlier iPhone versions can still start AppsFlyer; Reset to Defaults stops it for that installation. FeyCast stopped its attribution intake on September 19, 2026. Previously stored installation and subscription measurement records have not yet been deleted. First-party records expire within 400 days and FeyCast's AppsFlyer links and event records within 90 days. AppsFlyer holds its own copies under its retention terms; its account remains open pending deletion. Daily campaign totals without installation identifiers may be retained.
In earlier iPhone and iPad versions, AppsFlyer can still receive an installation identifier, app sessions, device and operating-system information, IP address and user agent. FeyCast no longer forwards subscription events to it.
FeyCast keeps anonymous daily counts of Premium offer views, button taps, and optional follow-up prompts. These contain no device or user ID, coordinates, reply email, or raw IP address. Random per-event retry receipts expire after nine days; aggregate counts expire after 400 days. Older apps may send purchase events, which FeyCast now discards.
The public marketing website uses Google Analytics for page views, device category, general region, App Store link clicks, and similar usage measurement. Google may use first-party analytics cookies or identifiers. FeyCast's tag disables Google signals and advertising-personalization signals. The website also uses Umami Cloud, configured as cookieless analytics and restricted to feycast.com and www.feycast.com. These tools are used for measurement, not advertising or cross-app tracking.
Requests to FeyCast infrastructure can produce standard logs containing an IP address, user agent, timestamp, request URL, response status, and origin or referring information. Because many feature URLs contain coordinates or search terms, those values can appear in a request log. Hosting and delivery providers can also receive ordinary connection metadata.
FeyCast records technical telemetry about calls to the Visual Crossing weather service, such as the endpoint, requested date window, timing, response status, record counts, and errors. The receiving server adds only the time it received the record; it does not store the IP address or user agent, and the transmitted record does not include FeyCast's location key. This telemetry is used for reliability and cost monitoring, not advertising.
FeyCast offers optional auto-renewing subscriptions through Apple's In-App Purchase system. Apple processes your Apple Account, payment method, billing, trial eligibility, subscription management, and refunds under Apple's Privacy Policy. FeyCast's StoreKit bridge reads product identifiers, localized prices, introductory-offer eligibility, and current entitlement status so the app can present an offer and unlock Premium.
FeyCast does not receive or store your full payment-card or bank details. From version 3.2.4, the iPhone app does not send purchase or subscription events to FeyCast's servers; Premium is unlocked from verified StoreKit state on the device. Apple may also provide FeyCast with subscription reports, a developer-specific subscriber identifier, transaction information, or country information under Apple's terms. You can manage or cancel a subscription in your Apple Account settings.
On Android, Google Play processes your Google Account, payment method, localized price, trial eligibility, purchase status, subscription management, and refunds under Google's Privacy Policy. FeyCast's Google Play Billing bridge reads product details and current purchase status, acknowledges completed purchases, and stores a bounded on-device entitlement result so Premium can remain available briefly while offline.
FeyCast does not receive or store your full payment-card or bank details. The Android app does not send Google Play purchase tokens and, from version 3.2.4, sends no purchase or subscription events to FeyCast's servers. Google may provide FeyCast with order, subscription, country, and financial reports under Google Play's terms. You can manage or cancel a subscription in Google Play's subscription settings.
FeyCast sends only the information needed for the requested feature. Not every data source below receives personal data: many provide public or global datasets that FeyCast retrieves centrally. A provider receiving a device request ordinarily receives network metadata such as IP address and user agent. A provider used for a location-specific request can receive coordinates, a search term, a map viewport, or a station identifier.
Each independent provider also processes data under its own privacy terms. FeyCast does not authorize providers to sell FeyCast personal data, create advertising profiles, or use it for unrelated targeted advertising or cross-app tracking. When a provider processes personal data for FeyCast, we require its agreement or applicable terms to limit use to providing or securing the requested service and to provide the same or equivalent protection described in this policy and required by applicable law. We will stop sending personal data to a provider if we learn that it cannot meet that requirement.
FeyCast has no user account, so data is not organized under one account record. Retention depends on the type of data:
When you ask FeyCast to delete data, we will delete the records we can reasonably locate and are not required to keep for security, legal, fraud-prevention, or dispute-resolution reasons. Because there is no account, we may need limited information such as the feedback email and date, station ID, approximate request date and place, or notification details to locate the correct record. We will not ask for more information than reasonably necessary.
Withdrawing an optional permission or choice stops the related future collection after the withdrawal takes effect; it does not undo processing that already occurred. Depending on where you live, you may also have rights to access, correct, delete, restrict, object to, or obtain a copy of personal data, and to withdraw consent where consent is the legal basis. Contact us to exercise those rights. We will not discriminate against you for making a privacy request.
FeyCast uses HTTPS for network requests and keeps support logs, API caches, the notification database, and the station database outside the public website directory or on access-controlled service storage. We limit the data sent to each provider to what the feature needs. No transmission or storage system is perfectly secure, and FeyCast cannot guarantee absolute security.
FeyCast and its providers operate infrastructure in multiple countries. Location requests, website analytics, support messages, notifications, and other service data may therefore be processed outside your country. Where applicable law requires safeguards for an international transfer, we rely on the provider's applicable contractual and legal transfer mechanisms.
FeyCast is a general-audience weather app designed to be appropriate for families, including older children. FeyCast does not require children or adults to create an account or profile, does not show advertising, and does not use advertising identifiers. A parent or guardian should supervise a child's use of optional features that send precise location, feedback, screenshots, notification preferences, or station information. Parents and guardians may contact us to ask what information we can reasonably locate, request deletion, or exercise rights provided by applicable law. If we learn that personal information from a child was collected in a way that requires parental authorization or deletion, we will take the steps required by law.
FeyCast provides general weather information. It is not an emergency alert service and should not be your only source for severe weather, aviation, marine, wildfire, earthquake, tsunami, or other life-safety decisions. Follow official warnings and local authorities.
We will update this policy when FeyCast's data practices materially change and will change the “Last updated” date above. If a new optional feature requires a new category of personal data or a new use, we will provide an appropriate explanation and request permission where required before the feature collects it.
For privacy questions, access requests, corrections, consent withdrawal, or deletion requests, email info@feycast.com. Please do not email passwords, payment-card details, or Ambient Weather API keys.