Lu Lunar Calendar Privacy Policy
Effective date: November 13, 2026
This policy covers the iOS app "Lu Lunar Calendar" (祿曆 · 農曆日曆, shown as "祿" on the Home Screen; "the app"). In short:
- The calendar works on your device. Dates, lunar dates, solar terms, moon phases and the almanac are calculated on your device. The people and dates you save in 我的日子 (My Dates) stay on your device and are never sent.
- Anonymous usage statistics. The app sends anonymous usage statistics, and you can turn them off.
- From version 1.2, the 命盤 (chart) and the 日課 (daily notes) are made on our server. From version 1.3, the 日課 is part of the 今日 (Today) page. For this, the app sends the birthday you save in 我 (Me), and your birthplace, clock time, birth hour and gender if you add them, to our server. It is stored under an anonymous account: there is no login, and we do not know who you are. You can delete this data in the app at any time. Versions 1.0 and 1.1 send nothing to our server.
- No ads and no tracking. We do not sell your data.
1. Who we are
- Service: Lu Lunar Calendar
- Developer: an individual developer
- Contact: lihao6485@gmail.com
2. Anonymous usage statistics
Version 1.0 of the app collects no data. Later versions send anonymous usage statistics through Google Analytics for Firebase, so we can see which parts of the app people use and make it better. This is on by default, and you can turn it off at any time (see section 3).
What is sent:
- Usage events. For example: the daily page was torn, a tab was opened, the day page was opened (and from where: Today, the month view, 跳到某天 (Jump to a day) from version 1.3 or the converter before it, a widget, a notification or a link; from version 1.3, when it opens from a tab, also which screen it is on, an iPhone or the iPhone Duo's outer or inner screen, and whether the screen is upright or sideways), a date was converted or looked up, a reminder was turned on, a widget was added, a date was added (only its kind, such as birthday, memorial day or anniversary), 我 (Me) was set, or the 日課 (daily) page or the chart page was opened. Also basic app events such as a session start and an app update. From version 1.3 also: 跳到某天 was opened, the 解 seal came on screen or was tapped, the AI explanation was closed, 自動解印 (Auto reading) was turned on or off, the invitation to add your birthday, or your birth hour and gender, was shown or tapped, the daily tear was skipped, and how long 今日 (Today) stayed on screen, as a range such as 5 to 15 seconds. These events only say which action happened. They never contain a name, a date, a birth hour or a gender, and nothing from the chart, the 日課 or the AI explanation.
- An app instance ID. A random ID that Google Analytics creates for this install of the app. It is not your name, email, phone number or Apple ID, and it is not the advertising identifier (IDFA). It changes if you delete and reinstall the app.
- Approximate location. The country or region, which Google works out from your IP address. The app does not use Location Services and never knows where you are.
- Device and app information. For example the device model, iOS version, language, and app version.
What the statistics never contain:
- no name, email, phone number or contacts;
- no dates you look at or convert, no birthdays, and nothing you type;
- none of the people and dates you save in 我 (Me) and 我的日子 (My Dates): no names, birthdays, memorial days, anniversaries, birthplace, clock time, birth hour or gender;
- nothing from the 我 chart, the 日課 or the AI explanation, such as the four pillars, the twelve palaces, the daily notes or the AI text;
- not the anonymous account ID of section 4: the app does not give it to Google Analytics;
- no advertising identifier (IDFA). The app is built without Apple's advertising framework and never shows the "Allow tracking" prompt.
The statistics are not linked to your identity, are not used for advertising, and are not used to track you across other apps or websites. We do not sell them or share them with anyone for their own use.
3. How to turn off the statistics
Open the app, go to 我 (Me) → 資料與關於 (Data and About) → 分享匿名使用統計 (Share anonymous usage statistics) and turn it off. In version 1.2 and earlier, it is 設定 (Settings) → 分享匿名使用統計. The app then stops sending usage statistics. You can turn it back on at any time.
4. From version 1.2: the 命盤 and 日課 on our server
From version 1.2, the 命盤 (the traditional 八字 four pillars and the 紫微斗數 twelve-palace chart) and the 日課 (daily notes) are made on our server, not on your device. In version 1.2 the 日課 is a page of its own; from version 1.3 it is part of the 今日 (Today) page. They need an internet connection the first time, and again when your birth data in 我 (Me) changes. Each new day needs a new 日課, and each new year a new 命盤. Your device keeps the latest copy of each (section 9), so you can open it again without a connection. When there is a connection, the app also checks our server for a newer copy.
When the app uses our server. Only when you have saved your birthday, with its year, in 我 (Me). If you never do, the app does not contact our server.
An anonymous account, with no login. The first time the app needs our server, it quietly creates an anonymous account with Firebase Authentication (a Google service). This account is only a random user ID. It has no name, email, phone number or Apple ID. The app keeps the same ID, so that our server can find your data again.
What the app sends to our server:
- your birth date (a lunar birthday is first changed to its Gregorian date on your device);
- your birthplace, if you add it;
- your birth hour (時辰), if you add it: only the two-hour period, and for 子 whether it is early 子 (00–01) or late 子 (23–24); or that you chose 不清楚 (not sure);
- your clock time, if you add it: the local hour and minute, and, if that time happened twice in that place (when the clocks went back), whether you mean the earlier or the later one;
- your gender, if you add it;
- with each request, the date of the 日課 you open, and the technical details that every internet request has, such as your IP address.
What our server keeps. Under your anonymous user ID, our server stores the birth data above. It may also keep the 日課 and the AI explanations (section 5) it made for you, so it can show them again. We use this data only to show you your 命盤 and 日課.
What is never sent: your name; the people and dates in 我的日子 (My Dates), such as names, birthdays, memorial days and anniversaries, and their reminders; your contacts; your location.
App Check. Each request to our server also carries a token from Firebase App Check. App Check uses Apple's App Attest to confirm that the request comes from a real copy of the app on an Apple device. This helps us block abuse. The token does not contain your birth data.
Not linked to your real identity. The data is linked only to the anonymous user ID, and we do not know who you are. We do not use it for advertising, do not use it to track you, and do not sell it or share it with anyone for their own use.
Our server ("lu-api") runs on Google Cloud (Cloud Run and Cloud SQL), in Google's Taiwan region. The app connects to it only over an encrypted connection (HTTPS).
5. The AI explanation
From version 1.2, if we have turned this feature on, the app can show a short AI explanation of the day: in version 1.2 at the foot of the 日課 page, and from version 1.3 on the 今日 (Today) page, under the day's theme. It is marked as made by AI and as 僅供參考 (for reference only).
The app asks our server for it only when you ask for it. In version 1.2 you tap at the foot of the 日課 page. From version 1.3 you tap the red 解 seal, or you turn on 自動解印 (Auto reading) in 我 (Me) → 每日 (Daily): the app then asks for it after each day's tear, without a tap. 自動解印 is off until you turn it on.
To write it, our server sends facts from your 命盤 for that day (for example your 生肖, the day's 干支, and the palace and stars it touches) to an AI service: Anthropic's Claude, either through Google Cloud Vertex AI or through Anthropic's own API. It does not send your birth date, birthplace, clock time, birth hour, gender or user ID. The AI service processes this for us as our service provider. Our server keeps its answer (section 4). You can read how they handle data at https://privacy.claude.com and https://cloud.google.com/terms/cloud-privacy-notice.
6. How long we keep data
- Your birth data, and any 日課 and AI explanations, on our server: until you delete them in the app (section 7). For now we do not delete unused accounts automatically. If we set a time limit later, we will update this policy first.
- Our server's technical logs (such as the time of a request, the IP address, the page asked for and any error): kept only for a limited time to run and protect the service, then deleted automatically.
- Usage statistics: see section 8.
7. Deleting your data on our server
In the app, go to 我 (Me) → 資料與關於 (Data and About) → 刪除雲端資料 (Delete cloud data) (version 1.3 or later), or 設定 (Settings) → 刪除雲端資料 (version 1.2). This deletes from our server your birth data, any 日課 and AI explanations, and the anonymous account.
- It also clears 我 (Me) on your device: your birthday, and your birthplace, clock time, birth hour and gender. From version 1.3, it also turns off 自動解印 and forgets that you tapped the 解 seal. It does not delete 我的日子 (My Dates) or your other settings.
- If you save your birthday in 我 (Me) again later, the app creates a new anonymous account and sends your birth data again.
- Deleting the app does not delete the data on our server. The account is anonymous, so we cannot tell which account is yours from an email. So please use 刪除雲端資料 before you delete the app. If you do not, the data stays on our server (section 6), and we cannot find it for you later.
8. Our service providers
These companies process data for us, as our service providers:
- Google: Google Analytics for Firebase (the usage statistics); from version 1.2, Firebase Authentication and App Check (the anonymous account and the request check), Google Cloud (our server and its database), and Vertex AI if the AI explanation runs there. Google keeps the detailed statistics event data for at most 14 months and then deletes it; we may keep summary reports (such as counts per week) longer. See https://policies.google.com/privacy and https://firebase.google.com/support/privacy.
- Anthropic: the AI explanation (section 5), from version 1.2.
- Apple: App Attest, part of iOS, used by App Check.
Our server is in Taiwan. Firebase and the AI service may process data in other countries, including the United States.
Besides these providers, we do not share data with anyone. We do not sell or rent it.
9. What stays on your device
To work, the app keeps some settings and data on your device (in iOS UserDefaults). Except where this list says so, they stay only on your device and we cannot see them:
- appearance settings (for example, light or dark theme);
- which reminders are on, and their times;
- whether the 黃曆宜忌 almanac and the daily tear are on;
- whether usage statistics are on;
- from version 1.3, whether 自動解印 (Auto reading) is on, and whether you have tapped the 解 seal at least once;
- whether you have seen the intro screens;
- the date you last "tore off" the daily page;
- which kinds of widgets were installed last time (to notice a new widget for the statistics);
- 我 (Me): your birthday, and your birthplace, clock time, birth hour and gender if you choose to add them. From version 1.2 these are also sent to our server (section 4); your device keeps its own copy;
- from version 1.2, a copy of the 命盤 and of today's 日課 that our server made for you (section 4), so that they open without a connection. Each copy is replaced by the next one the app receives. Both are deleted when your birth data in 我 (Me) changes or is cleared, and when you use 刪除雲端資料 (section 7);
- 我的日子 (My Dates): the people and dates you save (names, birthdays, memorial days, anniversaries and other dates), and the reminder setting of each date.
The people and dates you save in 我的日子 stay only on this device. All dates, lunar dates, solar terms and moon phases, and the dates in 我 and 我的日子, are calculated on your device.
Like the data of other apps, these settings and data are part of your iOS device backup (iCloud Backup or a backup on your computer). Apple and you manage that backup; we cannot read it. If you delete the app, this data is deleted from the device too. A copy that is already in a backup is kept as your backup settings say.
10. Notifications
If you turn on reminders (for example the daily page, the new and full moon, the eve of a solar term, or the eve of a festival), your device schedules them as local notifications. No push server is used. Reminders for 我 (Me) and 我的日子 (My Dates) work the same way: your device schedules them for 9:00 in the morning, and their text (for example a name and a date) is made on the device and never sent to us. You can turn them off at any time in the app or in iOS Settings.
11. Home Screen and Lock Screen widgets
The widgets read date data that the app prepares on the same device, through an iOS App Group (a shared space on the device). This data does not leave your device. The app can see which kinds of widget you have added (for example "day" or "moon"); only that kind is sent as a usage statistic.
12. Children
The app is not made for children and does not knowingly collect data from children.
13. Changes to this policy
If this policy changes, we will update this page and the effective date above. If the app ever starts to collect any other data, we will update this policy and the App Store privacy label first.
14. Contact us
If you have any questions about this policy, or about the data on our server, please contact:
- Service: Lu Lunar Calendar
- Email: lihao6485@gmail.com