Kabut

Kabut — Privacy Policy

Last updated: 10 September 2026

Kabut shows air quality and active fire hotspots for cities in Indonesia. This policy describes exactly what the app does with data. It is short because the app collects very little.

The short version

What the app collects

Location — only on request, never stored

The app opens on the national ranking and asks for nothing. If you tap Use my location, and only then, your device asks you for permission.

If you grant it:

  1. The app reads your approximate coordinates once (roughly 100 m accuracy — enough to tell which of our tracked cities is closest, and no more).
  2. It sends those coordinates to our own API in a single request, so the server can answer "the nearest tracked city is X".
  3. The answer comes back and the coordinates are discarded. They are not written to our database, not logged, and not sent to any third party.

The app never requests background location and cannot read your location while it is closed. Declining is a normal way to use Kabut: everything except this one shortcut works without it.

Saved cities — on your device only

Starring a city writes the city's short name (for example pontianak) to your phone's local app storage. That list never leaves your device. Uninstalling the app deletes it.

Advertising

Kabut carries one banner ad, pinned above the tab bar. On Android and iOS it is supplied by Google AdMob; on kabut.net it is supplied by Google AdSense. The two are different products and identify you in different ways.

In the apps. To serve an ad, the AdMob SDK reads your device's advertising ID — a resettable identifier Google provides for this purpose, which is not your name and not tied to any account you hold with us. Google may use it to choose which ad to show and to measure whether it was seen. What Google does with it is governed by Google's privacy policy and by the advertising ID controls in your device settings, where you can reset it or opt out of personalised ads entirely.

What the ad system never receives from us: your location, the cities you look at, the cities you save, or anything you type into the search box. Those never leave the app for any purpose other than the single nearest-city request described above. We do not pass any of them to Google.

On the website. AdSense identifies a browser with cookies and similar browser storage, not an advertising ID; there is no advertising ID in a browser. Google may use them to choose which ad to show and to measure whether it was seen, again governed by Google's privacy policy. You can clear them like any cookie, and turn off personalisation for your Google account at Ad settings. The website runs a single display unit that we place; it does not use AdSense Auto ads, which would let Google choose its own positions on the page.

Both. If you are in the EEA, the UK or Switzerland, you are asked for your advertising consent through a Google-certified consent form — on first launch in the apps, on first visit on the website. Declining is a normal outcome: you get non-personalised ads or none, and every other part of Kabut works exactly the same.

Ads are not shown on the city detail screen, which is where the health advice lives. On the website that is structural: the ad slot exists only on the five tabs, and the city page is not one of them.

Network requests

Like any app that fetches data, requests to our API carry your IP address, as every internet request necessarily does. We use it for one thing: a short-lived in-memory counter that limits how many requests one address can make per minute, so the free service is not trivially abused. The counter lives in the server's memory for at most a minute and is never written to a database, never linked to anything else, and never shared.

The map tab loads map tiles from OpenFreeMap, an open basemap service. Loading tiles discloses your IP address and which part of the map you are looking at to that service, as any map does. We chose it partly because it requires no key and no per-user identifier.

What the app does not do

Where the air quality data comes from

Kabut does not measure anything itself. An hourly job on our server fetches from public sources and stores the result so the app can read one cached endpoint:

Source What it provides
WAQI ground station readings
Open-Meteo modelled air quality where no station is nearby. Data is CC BY 4.0 and we modify it: the US AQI shown in the app is computed by us from the concentrations they publish
NASA FIRMS satellite fire hotspots

Your device never contacts these services. The app holds no keys for them and talks only to our own API.

Children

Kabut is a public-information tool suitable for general audiences. It collects no personal data from anyone, including children.

Your rights

Because we store no personal data and have no accounts, there is no personal record of you on our servers to access, correct, export, or delete. To remove everything Kabut itself has kept about you, uninstall the app — that deletes the saved-city list, which is the only data we hold.

The advertising ID is held by your device, not by us. Reset or delete it in Android's Settings → Privacy → Ads, or iOS's Settings → Privacy & Security → Tracking. The website's advertising cookies are held by your browser: clear them the way you clear any site's cookies. In the EEA, the UK and Switzerland you can change your advertising consent at any time from Kabut's Settings screen, in the apps and on the website alike.

Changes

If this policy changes in a way that affects what is collected, the updated date above will change and the new version will be published at this address before the change ships in a release.

Contact

Questions about this policy: hello@kabut.net