qawqaw

Privacy Policy

Effective October 26, 2026

qawqaw is a calendar app for keeping your own record of health habits such as medicine, exercise, sleep and food. This policy explains what information qawqaw handles, how it is used, and how you stay in control of it.

At a glance

Information we collect

Information you enter

Habits (name, short label, color and shape, schedule, times per day, note), tags (name, and whether personal or shared), records (date and time), skips (which habit’s slot — which day and time — you skipped), time slots (name, time, and that slot’s reminder settings) and settings. Of your settings, those also stored on the server when you connect an account are your day-start hour and time zone, each habit’s reminder settings (whether it’s on, and whether it rings some minutes before, on time or some minutes after), and whether you receive news notifications (“News from people you follow”, “Stamps I receive” and “Daily group summary” on or off, and any single person or circle you turned off); theme, text size, language and your other reminder settings stay on your device. However, while “Get them on this device” is on, this device’s notification address and the level you chose under “What alerts show” are stored on the server (see “Information for receiving notifications” below). You decide what to enter, and it may include information about your health.

Account information

Only if you connect a Google account, we receive your Google account identifier, email address, profile name and profile photo URL. The profile name and photo URL come with sign-in; qawqaw does not show them anywhere. Google handles sign-in, so qawqaw never receives your password.

When you connect an account, the sign-in server keeps a sign-in log. Each time you sign up, sign in, sign out or your sign-in is renewed, it records the type of event, the time and the sign-in method (Google) together with your account identifier and email address. This is for account security and to prevent misuse, and entries are deleted once 90 days have passed. When you delete your account, they are deleted with it.

To keep you signed in, the sign-in server holds session information for each device you sign in on. It contains your account identifier, when you signed in and when your sign-in was last renewed, and the IP address and browser information (User-Agent) of that connection. This is for keeping you signed in and for account security. It is deleted when you sign out, and for a device that has not been used for one year. When you delete your account, it is deleted with it. A device whose sign-in has ended sends that session’s number to the server to check whether the account was deleted and, if it was, clears the copy stored on that device.

While a sign-in is being processed, a temporary record containing the authentication tokens provided by Google is created. It is deleted when the sign-in completes, and any that did not complete are deleted once one day has passed.

Information for receiving notifications

News from people and circles (for example, when someone accepts your share) is sent as a notification by our server. These notifications go to devices where “Get them on this device” is on in Menu › Notification settings. If you have connected an account and allowed notifications on the device, it is on without you turning it on.

While it is on, this device’s notification address (on the web, the Web Push subscription address created by your browser and its encryption keys; in the Android app, the Firebase Cloud Messaging registration token) is stored on the server together with a device identifier generated at random for each installation, the kind of app (web or app) and its version, the level you chose under “What alerts show” (Medicine names, Count only or Hidden), and your account.

If you turn “Get them on this device” off or sign out, this registration is deleted right away and nothing more is sent to that device. The log of registrations and removals (which contains past notification addresses) is deleted once 7 days have passed; cleanup runs once a day, so it is gone within 8 days at the latest. If you delete your account, the registration and the log entries that contain a notification address are deleted at that time. The final entry saying it was removed (only the device identifier and account identifier, no notification address) is deleted after 7 days as above.

To send a notification, the notification server handles the recipient’s account identifier (not a name or email address), the kind of notification, the identifiers of the share, habits or circles it is about, a day and time, counts (for example, how many habits are past their time, or how many members of a circle are done for today), an irreversible value derived from the account identifier of the person whose action caused the news (a hash — used to limit how many notifications one person can cause for another), and, for four kinds of news from people only (“share accepted”, “Not yet”, “All done” and “Stamp”), the nickname of the person who caused it. The daily circle summary carries no nickname. Habit, tag and circle names and notes are never sent to the notification server. News for a person who has no device with “Get them on this device” turned on is not sent to the notification server.

Whether to send “Not yet” (the set time has passed with nothing recorded) and “All done” (everything for today is recorded) news, and the daily circle summary, is decided by a judging program that runs on the notification server. To do this, the program reads from the Seoul database the identifiers, schedules and set times of the habits in shared tags, the record times and skips of the last few days (four at most) for those habits, whose they are (account identifiers), the identifiers of circle members and when they joined or left, and time zones and day-start hours, and counts them on the spot. What it reads is not stored and not written to logs, and it does not read habit, tag or circle names, short labels, notes or nicknames. It reads only when the person who would receive the news has notifications turned on.

Notifications in the Android app are delivered by Google’s Firebase Cloud Messaging. Our server sends not the text of the notification but a key that says which wording to use, plus the nickname and the identifiers, day, time and counts described above; your phone draws the text. Unlike web notifications, these are not encrypted so that only the receiving device can read them, so Google processes the content of app notifications (including the nickname). If you set “What alerts show” to “Count only” or “Hidden”, the nickname is not included in app notifications.

Your own habit reminders (reminders at the times you set) do not go through the server; they are scheduled on your device only.

Diagnostic information

Error logs are kept on your device and are never sent automatically. A file is created only when you choose Menu › About › Export diagnostics, and that file does not contain habit names, short labels or notes.

If you have connected an account and tap Menu › About › Send diagnostics, then — and only then — the error log and device state (app version, browser and device type, the number of records stored on the device, sync status) are stored on our server with your account and used only to find the cause of the problem. Item names, short labels, notes and record contents are not included. Sent diagnostics are deleted after 30 days, and are deleted with your account if you delete it.

Website visit statistics

On our website (www.qawqaw.com) we count visits with Cloudflare Web Analytics. It aggregates the page address, where you came from (the previous page address), browser and device type, country and page load speed, and uses no cookies or device identifiers. The query and hash parts of addresses, your record contents, habit names, short labels and notes are never sent. The Android app does not include this tool.

Ads (Android app)

In the Android app, Google AdMob ads appear in a single strip at the bottom of the To-do, Stats, Together and Alerts tabs. There are no ads on the Record tab or on a screen opened from a notification, and the website has no ads.

To show ads, Google’s ads SDK included in the app sends Google the following (as published by Google): your device’s IP address (which may be used to estimate its general location), your interactions with ads (app launches, ads shown or tapped), performance information about the app and the SDK (launch time, hangs, energy use), device identifiers, and the name of the app requesting the ad (its package name). This means Google can tell that qawqaw is installed on the device. Google uses this information to serve ads, to measure ads and produce statistics, and to prevent invalid clicks.

How Google handles this information is described in the Google Privacy Policy (policies.google.com/privacy) and in “How Google uses information from sites or apps that use our services” (policies.google.com/technologies/partner-sites).

Purchases (Remove ads)

In the Android app you can buy a monthly subscription, a yearly subscription or a lifetime pass under Menu › Remove ads. Purchases are tied to your account so they survive a change of device, so you need to connect a Google account to buy. Google Play handles the payment.

Where your information is stored

How we use your information

Service providers that process data for us

To run the service, we entrust the processing of personal information to the following providers:

If these providers or their tasks change, we will update this policy and let you know. What Google handles for Google Play payments and AdMob ads is described in “Ads” and “Purchases” above and in “Provision to third parties” below.

Delivery servers that notifications pass through

Server-sent notifications reach your device through the notification delivery server of the company that makes your browser or your phone’s operating system. Which company that is depends on the browser and device you use.

On the web, what these companies receive is your device’s notification address and the encrypted notification content. The content of web notifications is encrypted so that only the receiving device can read it (RFC 8291), so the delivery server cannot read it. Android app notifications are not encrypted that way, so Google processes, along with the notification address, the content of the notification (the key that says which wording to use, the kind of notification, the share, habit and circle identifiers, the day, time and counts, and the nickname).

Transfers outside Korea

Information is processed outside the Republic of Korea in the three cases below. In each case it is sent over an encrypted network connection (TLS).

① Notification server — to deliver server-sent notifications, and to decide whether to send them.

If you turn “Get them on this device” off, or turn off notification permission on the device, this device’s notification address does not stay on the notification server, and if you have no device with it turned on, news addressed to you is not sent to the notification server either. You can still use records, the calendar, stats and your own habit reminders. However, even with your own notifications off, if a person you are connected with has notifications turned on, your information is carried in the news sent to them and passes through the notification server. When you accept their share or stamp one of their days, your nickname is sent; people who see you are sent news that you are past a set time or done for today (your nickname, the identifiers of the habits concerned, the day, time and counts); and members of the same circle are sent the daily circle summary (the circle’s identifier and how many members are done for today — not who). For this, the schedules and record times of the habits you share are read for the judging described above.

The location of the delivery servers (Google, Mozilla, Apple, Microsoft) is decided by each company and may be outside Korea.

② Purchase checks (RevenueCat) — to check and restore in-app purchases in the Android app.

③ Ads (Google AdMob) — to show ads in the Android app.

Provision to third parties

qawqaw does not sell or provide the personal information the operator holds to third parties. The only analytics the operator does are the website visit statistics above and the sales statistics RevenueCat produces from purchase history (number of subscriptions, renewals, cancellations). “Sharing you start yourself” below is you showing information to people you choose; it is not the operator providing your information.

However, the following two Google services in the Android app also handle information on Google’s own terms.

Habit names, short labels, tags, notes and record contents are never used for advertising or analytics, and are never sent to the ads SDK or to RevenueCat. If we add other advertising, payment or analytics tools, we will update this policy first and tell you in the app.

Sharing you start yourself

Sharing starts only when you create and send a link or QR code, or accept one you received. Sharing always works by shared tag; personal tags and their habits are never shared. The operator does not sell or provide this information to anyone.

What connected people see

Stamps

People who see you can put a stamp (“Well done”) on one of your days. When they do, who stamped whose day, which day, and when are stored on the server; nothing about your habits or records is included. A stamp is visible only to the person who gave it and the person who received it, and if the receiver has “Stamps I receive” turned on, a notification carrying the giver’s nickname is sent to them. A stamp is deleted when the giver removes it or when either person deletes their account; stamps already received stay even after sharing stops.

Nickname

Every account has one nickname that no one else uses. It starts as a random positive word plus a number, and you can change it once a day. Your nickname is shown to people you are connected with and to people who open your invitation. No one can search for users by nickname.

When you change your nickname or delete your account, we keep that nickname unavailable to everyone for 30 days, so that no one can take it straight away and pretend to be you. To do this we store not the nickname itself but an irreversible value derived from it (a hash). If you changed your nickname, the value is kept together with your account so that you can go back to your old nickname; if you deleted your account, we keep no record of whose it was. The value is deleted once 30 days have passed (31 at the latest).

Sending a habit list

When you send a habit list as a link or a single QR code, the list (habit names, short labels, schedules, notes, whether reminders are suggested, the sender name you typed, and the shared tag name) is carried inside the link itself (after the #). That part is never sent to our server, and no records are included. Anyone who has the link can read the list, and a sent link cannot be taken back, so check who you send it to. When the receiver adds the list as their own habits, those habits become the receiver’s, and if the receiver has connected an account they are stored on the server under the receiver’s account together with where they came from (the sender name, random identifiers that point to the sender’s app and that list, and when they were received).

Stopping

Use Menu › People who see me to stop sharing, Menu › People I see to stop viewing, and Menu › Shared-tag circles to leave a circle. After you stop, the copies on the other person’s device are removed the next time their app syncs. Records a participant made remain the participant’s own data; if the tag owner deletes their account, those records are deleted from our server as well.

Sets you make public yourself (Habit ideas)

If you use Post in Habit ideas, a “set” made from the habits under the tag you choose becomes public to every user. This is different from the sharing above, which is visible only to people you choose. It happens only when you post; if you never post, nothing is made public.

How long we keep information

Your rights

You can do all of this yourself in Menu › My data.

If you have removed the app or changed devices, see Account and data deletion.

What notifications show, and receiving them

In Menu › Notification settings, turning “Get them on this device” off stops server-sent notifications from coming to this device, and choosing “Count only” or “Hidden” under “What alerts show” keeps habit and people’s names off the lock screen and notification shade. In the Android app, our server decides whether to send the nickname according to this level, so the level you chose is stored on the server with the device registration. Turning off the device’s notification permission also stops notifications.

Your right to refuse consent

You may refuse the consent we ask for when you connect an account. If you do, you will be signed out and your records will not be stored on the server — you can still use records, the calendar, statistics and reminders on this device without an account.

Not medical advice

qawqaw is a record-keeping tool. It does not diagnose, prescribe or advise on medication. Talk to a doctor or pharmacist about whether, how much, and when to take or stop anything.

Children

qawqaw is not intended for children under 14, and we do not knowingly collect their personal information.

Changes to this policy

If this policy changes, we will update the effective date and let you know in the app.

Privacy officer and contact

Privacy officer: the qawqaw operator · [email protected]

Send questions, complaints or requests for remedy about your personal information to this address. We will respond and act without delay.

Remedies for infringement

If you need to report or get advice about a privacy infringement, you can contact these Korean authorities: