Privacy policy
Weather · HYM · Effective 15 October 2026 (policy version 1.19)
This policy explains how Weather, a weather app by the independent developer HYM, handles your data. It covers the website weather-app.hym-toys.workers.dev, the native Android app from version 2.0, and earlier Android versions that display the website. Describing an Android version here does not mean that it has been published or approved by an app store. In other languages the app is called מזג אוויר, El tiempo, الطقس, Погода, Météo, Tempo or Wetter. For any privacy question, write to webhym@gmail.com.
This copy of the privacy policy is hosted on Firebase Hosting, a Google service. The weather app and its API remain on Cloudflare. This page contains no Firebase SDK. According to Firebase's privacy documentation, Hosting uses IP addresses for abuse detection and usage analysis, and retains IP data for a few months. The policy is also available on the app's website.
In short
- Native Android version 2.0.7 introduces Google AdMob App Open advertising for adults and Google's consent platform. The website and earlier app versions do not include this advertising integration. The app has no accounts and does not send notifications.
- Device location access is optional. Weather requests round coordinates to two decimal places; the source affects their accuracy, and a website browser may provide a more accurate position. Hosting may derive an approximate country or city from your IP address even without that permission.
- Our program has no user database. Cloudflare and other services handle requests under their own policies, and some retain technical logs.
- Official warnings are shown as published. The website and earlier Android versions offer a Google Translate link for another language; text goes to Google only if you tap it. Native Android links to the official source.
- Your settings, favorites, trips and recent forecasts are stored only on your device.
- We do not sell your saved weather profile. Advertising services process data as described below, subject to applicable privacy choices.
Your location
You can always search for a place instead of sharing your location. In native Android 2.0 and later, “My location” requests Android's optional approximate location permission. From version 2.0.1, the app uses available Android system location providers that can serve that permission, which may supply a recent known position. It also reads location when it opens if you chose “Where I am” in Settings and already granted permission. Requests run only while the app is in the foreground. It does not request precise or background location, and does not track your movements. A pending location request ends after a short timeout, when cancelled, or when the app leaves the foreground.
Native Android rounds the received coordinates to two decimal places before saving the selected place or asking for weather. The nearest town's name is found on your device. The app keeps the last selected rounded position and a single forecast cache entry for “My location”; choosing another position replaces that entry rather than building a history of positions.
On the website and in earlier Android versions, the page asks for location when you tap “My location”, or when it opens with “Where I am”, with your last selected location, or with no selected place. Choosing a favorite as the opening place avoids this. If a permission or location setting is still pending, the page may retry once after you allow it or return within about two minutes. Weather requests round latitude and longitude to two decimal places. Rounding alone does not guarantee approximate location under every privacy definition: a browser can supply a more accurate position, and a 0.01° grid cell is smaller than 3 square kilometers.
Earlier Android versions show the page in a Trusted Web Activity or built-in WebView and delegate only Android's approximate location permission. A separate browser manages its own permission and accuracy. The wrapper keeps no separate location; the page keeps the last selected place locally. Hosting may also derive an approximate country or city from your IP address without device location permission, as described below.
What the app sends to our server
- Forecast: the chosen place, or optional device location rounded to two decimal places. Trip weather uses a destination city's coordinates.
- Official warnings: the same point, its country code and the app's language.
- Sea forecast (Israeli coast only): native Android sends the chosen place's coordinates rounded to two decimal places and the app's language; our server uses the point to choose a coastal zone. The website and earlier Android versions send the coastal zone and language. The Israel Meteorological Service receives the coastal zone, without the selected place's coordinates.
- Native Android includes the city index in the app. City search and naming the nearest town run on your device without sending the text you type or its first letters. On the website and earlier Android versions, parts of the city index are downloaded from our website using the first letters you type or an area about 200 km across; the download path can reveal that prefix or area.
- Trip dates, titles, packing lists, activity choices and your personal display settings are not sent to our server.
Our server
Our server is a small program hosted on Cloudflare. The program uses what the app sends to answer the request and has no user database. Per-request invocation logs are disabled in our configuration. If something goes wrong, a short error message without coordinates (for example “forecast failed”) may be recorded. Cloudflare retains these logs for the period applicable to our hosting plan.
So that people in the same area share one request to the weather services, the server keeps copies of the weather data it receives, such as the forecast for a grid square about 5 km across or a country's list of warnings, in Cloudflare's cache for up to a day. These copies contain only weather data and the grid point, never anything about who asked.
As our host, Cloudflare processes requests, including your device's IP address and routing information, for service delivery and security under its privacy policy. This traffic processing is separate from the program's logging configuration.
Cloudflare's service documentation describes location information derived from incoming requests, such as a visitor's approximate country or city. Hosting may derive this information from your IP address even if you decline device location permission. Our program does not use this metadata to choose your forecast.
Weather services our server contacts
Our server, not your device, gets the weather from:
- Forecasts: MET Norway, the Norwegian Meteorological Institute (api.met.no).
- Official warnings: the US National Weather Service (api.weather.gov); Environment and Climate Change Canada (api.weather.gc.ca); MeteoAlarm for Europe (feeds.meteoalarm.org, run for EUMETNET by GeoSphere Austria); MetService for New Zealand (alerts.metservice.com); and the Israel Meteorological Service (ims.gov.il), which also provides the sea forecast.
For weather requests, MET Norway and Environment and Climate Change Canada receive a grid point about 5 km across (0.05°), rather than the finer point sent to our server. The US National Weather Service receives the place rounded to two decimal places, because US warnings can cover small areas such as a storm's path. Our server does not send the coordinates of your selected place to MeteoAlarm, MetService or the Israel Meteorological Service. It downloads country warning lists and their linked documents, or a forecast for a stretch of coast, and selects what applies to your place itself. When a request of yours makes our server contact these services (when no recent copy is cached), Cloudflare may pass your device's IP address to that service in a header called CF-Connecting-IP, and the service handles it under its own privacy policy. We send them nothing else that identifies you.
Some providers retain request logs: MET Norway documents IP retention of up to 90 days; the US National Weather Service may keep request logs for usage statistics and security; and MetService retains usage information as needed for its purposes. Their policies govern this handling, separately from our program.
Warnings in another language
Native Android shows the published warning text and offers its official source link. It does not send warning text to a translation service. The following optional translation link applies to the website and earlier Android versions.
Official warnings are shown as the weather service published them. When a warning's text is in a language other than the app's (for example an English warning while the app is in Hebrew), a “Translate with Google Translate” link appears under it. Nothing is sent unless you tap it. If you do, your device opens Google Translate, a Google service, in your browser or in Google's Translate app, and the address it opens contains the public text of that warning (its headline and description, or only their beginning if they are very long), the warning's language and the app's language. We add nothing about you, and the link does not go through our server. Because a warning describes the area it covers, its text may show roughly which region you are viewing. Like any website, Google also sees your device's IP address, and it processes all of this under its own terms and privacy policy.
The map
Maps are loaded by your device directly: the base map from OpenFreeMap (tiles.openfreemap.org), and satellite and rain images from NASA GIBS (gibs.earthdata.nasa.gov) and EUMETSAT (view.eumetsat.int). Like any website, these services see your device's IP address and which part of the map is loaded, which is roughly the place you are viewing. We add no account or tracking identifier to these requests. On the website and earlier Android versions, the map loads when you scroll to its card, which you can hide in Settings. Native Android loads the map when you open the Map tab. It uses the MapLibre native SDK and keeps map resources in its local cache. Satellite precipitation is an estimate, not live radar. You can clear native map data with “Delete my data”, as described below.
OpenFreeMap normally omits IP addresses from its logs, but may log them for up to 30 days during security incidents. The map providers handle technical data under their own policies.
Links and sharing
Links in the app, such as the Israel Meteorological Service rain radar, the full text of an official warning, or the sources and licenses, open that organization's website in your browser, under its own privacy policy. Some of these links contain the place's approximate coordinates. The “Share” button draws a picture on your device and hands it to the app you choose; it does not go through our server.
A shared forecast comes with a link that opens the same city for whoever you send it to. The link holds the city's name and the city's own coordinates rounded to two decimal places. In native Android, sharing a forecast for “My location” uses the website's main address without your device position. On the website and earlier Android versions, that link names the nearest city, never your own position. A name you gave a favorite place (such as “Home”) is never in the picture or the link: they show the city's name. “Share the app” sends only the address of our website.
On the website and earlier Android versions, “Send feedback” opens your own email app with a message to us. Its subject is filled in with the app's version, the app's language and the kind of device (for example “Android app”), and nothing else: no location. Nothing is sent unless you send it. “Rate the app” opens the app's page in Google Play or the Amazon Appstore.
My trips
Trips are kept on your device: destination city, dates, title, packing-list ticks and the items you add. Their dates, lists and planning choices are never sent to our server. Native Android supports up to 10 trips, each lasting 1 to 30 days. It computes destination-local dates, packing suggestions and activity windows from the forecasts it already has, and can compare two saved destinations on the same calendar date in each destination's time zone.
From native Android 2.0.2, the app also saves one unfinished trip draft so you can continue after reopening it: the current destination search text, selected city, title and dates. Pressing Cancel, dismissing the editor or successfully saving removes that draft. For up to 10 saved trips, it keeps your latest planning choices, such as the selected day, activity, duration and comparison destination, and unfinished text for a custom packing item. This is local input, not an interaction history; the draft, search text and planning records are not uploaded.
To show weather and warnings, the app sends the destination city's coordinates rounded to two decimal places, and for warnings its country code and the app's language, just as for any city you view. It never sends anything that identifies the request as a trip. Native Android requests this data only when a trip starts within 9 days of the destination's local date or is under way, and only while you use the app. An available saved forecast can be shown offline only while its source age and actual time coverage remain usable.
The website and earlier Android versions also keep when a trip was added, which in-app reminders were shown, the home city chosen for comparison, and saved forecasts for that city and the destination. These versions fetch trip weather within about 8 days or while a trip is under way. Their destination and home city use the city's coordinates, including when selected from “My location”, rather than your device position. Reminders appear only inside the app. City search follows the version-specific behavior described above.
Where no official warning source is available, a link to the World Meteorological Organization's worldwide warnings page (severeweather.wmo.int) may be offered. It opens only when tapped, contains no place, and is subject to the WMO's policy.
Native Android from version 2.0
This version uses Kotlin and Jetpack Compose. It does not display the app in a WebView or require Chrome. Settings, favorite places, trips, custom activities, the last selected place and saved forecasts are kept in the app's private storage. Forecasts and warnings use our existing Cloudflare server; maps contact the providers above directly.
From native Android 2.0.2, automatic language selection uses the device's ordered language settings on your device; you can choose and save a manual language instead. City suggestions use the region in the device's locale settings when available, or popular cities worldwide. This setting is not your physical location and does not automatically select a weather location. The device locale list and region are not sent to our server. Warning and sea requests still include a supported source language selected using the app's language, as described above.
We add no standalone analytics or Firebase SDK. From version 2.0.7, Google Mobile Ads processes advertising data as described below. Android and UI libraries are used to run the app, and MapLibre is used to display maps. The privacy page at hym-weather.web.app is hosted by Firebase Hosting; opening that external page sends a normal browser request to that service under its privacy terms. Firebase is not used to store app settings or trips.
The app is configured to exclude its local data from Android cloud backup and standard device-to-device transfer. It shares a locally generated forecast picture through Android's share chooser. Pictures older than 24 hours are removed the next time you share, and “Delete my data” also removes them. External source, license and privacy links open your browser only when you tap them.
Earlier Android versions
On most Android phones, the app opens in Chrome or another browser that can show it as an app (a “Trusted Web Activity”). Its data is then kept in that browser's storage for our website, and the browser handles it under its own privacy policy.
On devices without such a browser, such as Amazon Fire tablets and phones without Chrome, the app shows our website in its own built-in web view instead:
- What the app keeps (the items under “Stored on your device” below) is in the app's private storage on your device. It is excluded from Android backups and from transfers to a new device.
- The app asks Android only for approximate location, never for precise location, and only when the page asks for it. Android's web view then gives the location to the page, and the app keeps none of it.
- When you share the forecast, the picture is saved briefly in the app's cache so that the app you choose can read it. The next share replaces it, and “Delete my data” deletes it.
- The web view adds “WeatherAppWebView/1” to the browser identification (user agent) it sends, so that our website can tell it is running inside the app and offer the app's own sharing and deletion. Our server does not store it.
- On devices with Google services, Android's web view may check the addresses it opens with Google Safe Browsing, which Google provides under its own privacy policy.
- You can delete everything it keeps with “Delete my data” in the app's Settings, with “Manage space” in Android's settings for the app, or by uninstalling the app (see below).
Stored on your device
Native Android uses its private app storage. The website uses the browser's storage for our website; earlier Android versions use that browser storage or their private WebView storage.
- Your language, units, appearance, reduced-motion choice, card visibility and order, and other display settings.
- From native Android 2.0.2, the last tab, chart choice and map layer choice are kept locally. The app keeps only one latest map viewport, including its associated place, center coordinates rounded to two decimal places and zoom level, rather than a trail of map positions. These saved interface records are not sent to our server or used for telemetry. Opening the map still requests tiles for the area you view from map providers, as described above.
- Your favorite places, their personal names and order, and the last selected place. Native device location is saved rounded to two decimal places.
- Native Android keeps up to 12 recent named-location forecasts and one separate forecast for the latest selected device location. A saved forecast is displayed only while its source is at most 24 hours old and its actual intervals cover the current time. The map SDK also keeps local map resources. Native Android also keeps short forecast summaries for up to 12 named locations and one latest device location to show changes since your earlier visit. They remain on the device, use the same rounded coordinates and are cleared by the app's local-data deletion command.
- Native trips keep destination, dates, title, packing ticks and custom items until you delete them. The website and earlier Android versions also keep in-app reminder state, the comparison home city and their trip forecast copies.
- Your chosen and custom activities, their conditions, favorite names, opening-place choice and whether you usually feel cold or hot remain local. Activity times, clothing and packing suggestions are computed on your device from the forecast. Selecting a place still asks our server for its weather in the normal way.
- The website and earlier Android versions keep short summaries and up to 20 recent forecasts to show forecast changes and work offline. Device-location summaries use a single entry, rather than a trail of positions. Their selected device location is stored rounded to about 100 m, while weather requests use two decimal places.
- Earlier Android versions keep a local count of up to five opening days and whether their one-time store-rating prompt was answered. A removed home-screen widget's old data is deleted on their first startup after the update. Native Android does not use these browser or widget records.
From native Android 2.0.7, the app also keeps a small advertising frequency record locally. That record includes a total entry count, recent display counts and times, and clock information used to enforce the limits. Google's consent SDK keeps consent and privacy-choice records. These records are separate from your weather settings and are not sent to our weather server. An age-group record left by an earlier build is retained locally, if present; the current release does not ask for a new age-group choice.
App stores
If you install an available version from Google Play or the Amazon Appstore, the store handles downloading and updating under its own terms and privacy policies. They show us overall figures, such as the number of installs, and may show us technical crash reports (for example the device model and Android version), but not who you are. Reviews you post are public on the store.
For versions processed and distributed by the Amazon Appstore, Amazon may add its own code. According to Amazon, it uses this code among other things to collect analytics about the app and to apply its policies, and the app contacts the Amazon Appstore app on your device when it starts. This is done by Amazon, under Amazon's own terms and privacy notice, and we receive nothing from it about you.
Security
- The app, our server, the weather services, the map services and Google Translate are reached only over HTTPS, so data is encrypted in transit.
- Our server and website are hosted on Cloudflare. Only the developer has access to the hosting account.
- There are no accounts or passwords, and our program has no user database. Provider logs are described above.
How long data is kept
- Our program has no user database. Error messages without coordinates follow Cloudflare's retention period for our hosting plan. Cached weather data is replaced within a day.
- Native settings, favorites, trips and latest interface and trip-planning choices stay until you remove or replace them or clear app data. An unfinished trip draft stays until you cancel or dismiss it, successfully save it, or clear app data. Forecast cache entries are replaced as their limits are reached. Unusable cached forecasts are not presented as current. Shared pictures older than 24 hours are cleaned on the next share; map resources follow the SDK's local cache.
- On the website and earlier Android versions, summaries and forecasts are replaced when their limits are reached. These versions remove a trip three days after it ends on the next startup, remove trip-only forecast copies when no trip needs them, and retain the comparison home city until changed or cleared.
- Cloudflare, weather and map providers, Firebase Hosting when you open the privacy page, Google when you tap a translation link, Google advertising services in Android 2.0.7 and later, and an app store keep what they receive under their own policies. Our local deletion does not erase their logs or data.
Advertising frequency records are updated and kept locally so limits survive app restarts. Any age-group record left by an earlier build remains until app storage is cleared. The consent SDK maintains its own local choice records and checks whether choices need to be renewed. Clear storage in Android removes these local records; provider-side advertising data follows Google's retention and deletion policies.
Deleting your data
The app's deletion command removes the local weather data listed below. It does not erase request logs or data held by Cloudflare, weather or map providers, Firebase Hosting, Google advertising services or external websites; their retention and deletion policies apply.
- In native Android, open Settings and choose “Delete weather data” (called “Delete all local data” in earlier versions). It clears weather and display preferences, favorite places and names, trips, custom activities, forecast summaries, saved forecasts and shared pictures, as well as the last tab, chart and map choices, the saved viewport, trip-planning choices, unfinished packing text and trip draft. It cancels app requests and asks the map SDK to reset its local map database. The app shows deletion progress; if clearing map data fails, it shows a retry message rather than claiming that step succeeded. From version 2.0.7, this command keeps advertising frequency records, Google's consent records and any age-group record left by an earlier build. Where available, review advertising privacy choices separately in Settings. To erase all private app storage, including these advertising records, use Android Settings → Apps → Weather → Storage → Clear storage. This also resets local settings and saved weather data.
- Removing a native trip removes its dates and packing list. A forecast already fetched for the destination may stay among the bounded recent forecasts until replaced or cleared. You can remove favorite places and custom activities individually; a saved personal favorite name can be cleared by renaming it to an empty value.
- On the website and earlier Android versions, Settings → “Delete my data” clears favorites and personal names, trips and home city, activities, settings, summaries and saved forecasts, then restarts the page. Their built-in WebView also clears its cache, cookies and shared picture.
- A separate browser, including a Trusted Web Activity browser in earlier Android versions, may retain server answers in its own cache for up to about 30 minutes. The page's deletion cannot remove that browser cache. You can delete data for weather-app.hym-toys.workers.dev in the browser's settings.
- Earlier Android versions also offer “Manage space” in Android Settings: it opens the browser's site-data settings or clears the built-in WebView's app data after confirmation. Removing a trip in those versions removes its trip-only saved forecast unless another trip needs it; a recent forecast copy can remain until replaced.
- Uninstalling native Android removes the app's private data. It does not remove data kept by an external browser or a picture you sent to another app. Data kept by a browser for our website is managed by that browser.
For any question or request about your data, write to webhym@gmail.com.
Android App Open advertising (from version 2.0.7)
Native Android version 2.0.7 introduces Google AdMob App Open ads for adults. The website and earlier Android releases do not include this advertising integration. The app is intended for adults aged 18 and over and does not ask you to select an age group or provide a date of birth. This audience designation is not a verification of an individual user's age. Consent requests are handled by Google's platform as described below. If an earlier build stored an under-18 or prefer-not-to-say choice, that existing local restriction is preserved and the app does not start consent or advertising for that record.
Google Mobile Ads may automatically collect and share IP addresses (which may estimate a general location), device and advertising identifiers (such as the advertising ID and app set ID, and account-related identifiers where applicable), ad and app interactions, and diagnostic/performance information. Google uses this data for advertising, analytics, fraud prevention and security. Data is encrypted in transit. We do not pass your weather coordinates, saved places or trips to an ad request. Google's SDK has its own data processing; see Google's privacy policy, Google's data-retention information and Google advertising information.
Google's User Messaging Platform manages consent and privacy choices where applicable. Requests are permitted only when that platform reports that ads may be requested. Where required, Settings includes a privacy options button to review choices. Your choices can affect whether personalized, non-personalized or limited ads are available; declining personalization does not necessarily remove all advertising or all advertising-related data processing. The app does not provide a general switch to disable all advertising and its related SDK data collection. You can also reset or delete the Android advertising ID using Android's advertising settings. Local counters and timestamps limit display frequency; these counters are not sent to our weather server.
The app starts an ad presentation only during launch, on top of a short launch screen that waits a few seconds at most for the ad, or immediately upon a qualifying return after at least 30 seconds in the background. On return, an ad may cover the screen you left open. Google controls the ad's rendering and close controls. The first two counted entries are ad-free, then there is at most one display per hour and three per device-local day. Ads are not guaranteed on every eligible entry.
Age audience
From Android version 2.0.7, Weather is intended for adults aged 18 and over. It does not ask for an age group, name, date of birth, email address or other contact details. Any under-18 or prefer-not-to-say restriction saved by an earlier build is retained locally as described above; it is not replaced with an adult choice.
Data use
We do not sell weather profile data. Advertising providers may process data for their advertising purposes as described above, subject to applicable privacy choices. We add no app account identifier. Amazon's handling of copies it distributes is described above. Hosting and other providers can process technical traffic under their own policies. The app sends the data described here to get the weather or map you request; warning text reaches Google Translate only if you tap the translation link available on the website and earlier Android versions.
Changes to this policy
If the app changes the way it handles data, we will update this page before the change takes effect and show the new date and version at the top.
Contact
Weather is developed by HYM. Privacy contact: webhym@gmail.com.