The short version
There is nothing to sign up for. Kuokka stores your bookmarks, reading history, Radar watchlists, streaks and settings in the app's own storage on your phone, and they never leave it. Article summaries are produced on the device. The app does use a small number of third-party services — Hacker News itself, crash and analytics reporting, ads on the free tier, and the stores that process purchases — and each is listed below.
Deleting the app deletes everything Kuokka kept on the device. There is no copy on a server for us to hold, because there is no server.
What stays on your device
- Bookmarks and saved articles, including anything downloaded for offline reading
- Reading history, which is what dims the stories you have already opened
- Radar watchlists: the keywords, domains, authors and sections you follow
- Reading streaks and achievements
- Your settings, including theme, text size and any provider API key you add
This data is written with the platform's own storage (DataStore on
Android,
NSUserDefaults on iOS) and is covered by the device's
encryption. It is not transmitted to us and is not synced between your
devices.
What leaves your device, and where it goes
| Service | What it receives, and why |
|---|---|
| Hacker News API | Requests for stories, comments and profiles. Like any web request this reveals your IP address and approximate region to the service. Kuokka does not attach any identifier of its own. |
| The sites you open | Opening an article in reader mode fetches it from the publisher's own server, so that request reaches the publisher exactly as a browser visit would. |
| Google AdMob | Ads on the free tier. Ads in Kuokka are not personalized. AdMob may still use a device advertising identifier for frequency capping and fraud prevention. Premium removes ads completely. |
| Firebase Analytics and Crashlytics | Anonymous usage events and crash diagnostics, and only if you allow them. Kuokka asks on first run and the choice lives under Account, where you can change it at any time. |
| RevenueCat | Purchase and entitlement state, so a Premium purchase is recognised on the device. It receives a store transaction identifier, never your payment details. |
| Your AI provider, if you add a key | Only when you supply your own Gemini, Claude or OpenAI key: the article text is sent to that provider under your own account and their terms. Leave the key empty and no article text ever leaves the device. |
Summaries and comment digests
By default Kuokka summarizes on the device. The summarizer is extractive: it selects sentences that already appear in the article rather than generating new text, and it needs no network call and no API key. If you prefer a language model to write them, you can add your own provider key in Settings — that is the only configuration in which article or comment text is sent anywhere.
Notifications
Radar digests arrive as local notifications scheduled on the device. They are not push messages, there is no push token, and nothing about them reaches a server. Kuokka asks for notification permission before scheduling any, and the system settings for the app revoke it at any time.
App tracking on iOS
On iOS, Kuokka presents Apple's App Tracking Transparency prompt before any tracking identifier could be used for advertising. Declining is fully supported; the free tier continues to show non-personalized ads, and nothing else in the app changes.
Your choices
- Analytics: turn anonymous analytics and crash reporting on or off under Account.
- Advertising: reset or limit your advertising identifier in the device's own privacy settings, or buy Premium to remove ads.
- AI provider: remove your API key in Settings and summaries return to running on the device.
- Everything else: clear reading history from Settings, or delete the app to remove all of it.
Children
Kuokka is not directed to children under 13 and does not knowingly collect information from them. It displays content from Hacker News, which is written for a general adult audience and is not moderated by us.
Changes to this policy
If the app starts handling data differently, this page changes with it, and the effective date above moves. Material changes will also be described in the release notes for the version that introduces them.
Contact
Questions about any of this, or a request about your data, go to manulorenzop@gmail.com. Kuokka is built and maintained by Manuel Lorenzo Parejo.