Privacy policy
SkyBudget is a household budget app for iPhone and Android. You record what your household spends, and the people in your household see the same numbers. This policy explains what data that takes, where it's kept and what you can do about it.
In short: we keep only what the app needs to work. No ads, no tracking, and we never sell your data. Your budget is stored with Google Firebase in Warsaw (europe-central2). When you scan a receipt, the photo is sent to Anthropic so their AI can read it. Usage statistics are optional: nothing is sent until you allow them. Crash reports help us fix crashes, and you can turn them off in Settings.
1. Who is responsible
The controller of your personal data is Skyway Labs Inc., 1207 Delaware Ave #445, Wilmington, DE 19806, USA. For anything about your data, write to hello@skywaylabs.io.
2. What we collect
Your account
- Your name and email address. With Sign in with Apple on iPhone they come from Apple, and the email can be Apple's private relay address. With Sign in with Google on Android they come from your Google account. If you sign up with email, you type them in; your password is handled by Firebase Authentication and we never see it.
- A user ID that Firebase assigns to your account. With Sign in with Apple, also the identifier Apple gives for your Apple ID in SkyBudget. With Sign in with Google, also your Google account's identifier and the link to its profile picture, if it has one; Firebase Authentication stores these, and the app doesn't use the picture.
- The app's language and when the account was created.
- Which phone you last used the account on, so we can help when something doesn't work: the phone model, the system (iOS or Android) and its version, the app version, and when you last opened the app. Only the latest phone is kept, and it is overwritten the next time you open the app. This is part of your account, not usage statistics, so turning statistics off doesn't stop it; it is deleted with your account.
Your household
- The household's name and its members. Your name is shown to the other members.
- The household's country (Poland or the Netherlands) and the currency and time zone that go with it. The country is chosen when the household is started and can't be changed later.
- Invite codes. Each one works once and expires after 24 hours.
Your budget
- Expenses and other transactions: date, amount, shop, payment method, who paid, notes, and the items on a receipt with their prices, categories and who they were for.
- Categories and their names, the category corrections you make (which product goes in which category), and recurring payments.
- Debts, such as loans, credit cards and pay-later accounts, with their balances, payments and statements.
- How many receipts the household has scanned this month, for the monthly limit.
- Your daily check-in: whether it's on, its time, the day you turned it on, and the days you answered that you spent nothing. The other members see it, so the app can tell which days nobody has logged yet.
Receipt photos
- The photos and PDFs of receipts you scan or import. They're stored with the expense they belong to, so you can look at them again.
Kept only on your phone
- App settings, and the reminders for the daily check-in and debt payments, which are scheduled on the device.
- Receipt pages waiting to upload (for example when you're offline). They're deleted from the phone once uploaded.
- CSV exports. They're made on the device and go only where you share them.
Technical data
- Our server functions log technical events, such as which account, household and expense a receipt scan was for, how many items were found, and errors. Google's servers also handle technical data like your IP address when the app connects. We use these logs only to run the service, fix problems and prevent abuse.
- The Firebase libraries in the app send Google basic technical information about the libraries themselves, such as their version and the platform, which isn't linked to your account.
- To protect our servers, the app proves it's genuine: on iPhone through Apple's App Attest or DeviceCheck, on Android through Google Play Integrity.
- Android only: when you scan a receipt with the camera, you use Google's document scanner (ML Kit) in Google Play services. The scanning happens entirely on the phone, but ML Kit sends Google diagnostics and performance statistics: the phone's manufacturer and model, the system version, the app's name and version, a random identifier for this installation, timings, image settings and size, and error codes. We don't give it your name, email or user ID.
- Android only: when the app calls our server functions, the Firebase library attaches a Firebase Cloud Messaging token, an identifier for this installation used for push notifications. We don't send push notifications; reminders are scheduled on the phone.
Usage statistics (optional)
On iPhone and Android, after you sign in and set up your household, the app asks once on each phone whether you want to help improve SkyBudget. Only if you tap Allow does it send usage statistics to Google Analytics for Firebase; until then nothing is sent. You can change your mind any time in Settings › Diagnostics › Usage statistics.
- What's sent: which screens and features you use (for example that a receipt was scanned, an expense was added or a category was turned off), counts and durations (how many items a receipt had, how long reading it took), error codes, and the template category an expense went into (such as “Groceries”; a category you created is sent without its name, only as “custom”).
- Sent with it automatically: a random identifier for this installation of the app, your phone model, its system (iOS or Android) and app version, language, and an approximate location (country, region, city) that Google works out from your IP address.
- Never sent: amounts, shops, items, notes, or anyone's name or email. Statistics aren't linked to your account: we don't send your user ID.
- If you turn statistics off, sending stops and the app deletes its statistics identifier and anything not yet sent from the phone.
Crash reports
- If the app crashes, Firebase Crashlytics sends a crash report: where in the code it crashed, the phone model, the system (iOS or Android) and app version, the device's state at the time (such as free memory), a random identifier for this installation, and the number of members in your household. It contains no amounts, shops, items, notes, names or emails, and isn't linked to your account.
- To tell how often the app crashes, Crashlytics also reports that the app was opened: the phone model, the system and app version, the network type, how long the app was in use and a random identifier for the installation, with no budget data.
- Crash reports are on by default. You can turn them off in Settings › Diagnostics › Send crash reports, which stops these reports of the app being opened too.
The waitlist on the SkyBudget website
- If you sign up on the SkyBudget website to hear about a launch (the Android version or SkyBudget Plus), we store your email address, what you want to hear about, the page language, and when you signed up and agreed.
- To limit spam, we count sign-ups from each IP address per day. We don't store the IP address itself, only a hash of it.
3. Why, and on what legal basis
- To provide the app you signed up for: your account, the shared household budget, receipt reading, debts and exports (GDPR Art. 6(1)(b), performance of a contract).
- To keep it secure and working: technical logs, crash reports, limits on receipt scans, and protecting accounts (Art. 6(1)(f), our legitimate interest in running a safe, reliable service). You can turn crash reports off in Settings.
- To understand how the app is used and improve it: usage statistics, only with your consent (Art. 6(1)(a)). You can withdraw it any time in Settings; that doesn't affect what was sent before.
- The launch email you sign up for on the website: only with your consent (Art. 6(1)(a)). You can withdraw it any time by writing to hello@skywaylabs.io, and we'll delete your address. The per-IP sign-up count protects against abuse (Art. 6(1)(f)).
We don't use your data for advertising or profiling, and we don't make decisions about you by automated means that have legal or similarly significant effects. The AI only suggests what's on a receipt and which category an item belongs to; you check and confirm it.
4. Where your data is stored
Your account, household, budget and receipt photos are stored with Google Firebase (Cloud Firestore, Cloud Storage and Cloud Functions) in the EU region europe-central2, in Warsaw. Sign-in uses Firebase Authentication, a global Google service, so account details (name, email, user ID) may also be processed outside the EU. Google processes the data on our behalf under its data processing terms, with the European Commission's standard contractual clauses for any transfer outside the European Economic Area.
Usage statistics (Google Analytics for Firebase) and crash reports (Firebase Crashlytics) are processed by Google on our behalf and may be processed outside the EU, including in the United States, under the same data processing terms and standard contractual clauses.
The website waitlist is stored in Cloud Firestore in Warsaw, and only Skyway Labs can access it.
Data travels encrypted (HTTPS). Only members of a household can read its data and receipt photos.
5. Receipt reading by Anthropic
When you scan or import a receipt, our server sends it to Anthropic, the company behind the Claude AI, to read it. The app asks you before the first receipt is sent. Anthropic receives:
- the photos or PDF of that receipt;
- the household's country, which sets the reading instructions, the currency and the language of the item names we get back (Polish for Poland, English for the Netherlands);
- the household's category names and how they're grouped: English and Polish names for a household in Poland, English names for a household in the Netherlands, and a category you created under the name you gave it;
- the household's category corrections: product names, sometimes with the shop's name, and the category you chose for them.
Anthropic sends back the shop, date, total, payment method and items, which we save on the expense. Your name and email aren't sent.
Anthropic acts as our processor. Under its commercial terms it doesn't use this data to train its models, and it deletes it after a short period (currently up to 30 days), unless it must keep it longer by law or to investigate misuse. Anthropic is based in the United States; the transfer is covered by the European Commission's standard contractual clauses in Anthropic's data processing terms. We don't keep any copy at Anthropic: the receipt photo stays with us only as part of your expense.
You don't have to scan receipts. You can always add expenses by hand, and then nothing is sent to Anthropic.
6. How long we keep it
- Your account and your household's data are kept until you delete them, or until you delete your account.
- Deleting an expense also deletes its receipt photos.
- Invite codes stop working after 24 hours and are deleted automatically.
- Technical logs are kept for 30 days.
- Usage statistics are kept for 2 months.
- Crash reports are kept for 90 days.
- A waitlist address is kept until we've sent the launch emails you asked for, at most 12 months from your latest sign-up, or less if you withdraw consent. Daily per-IP sign-up counts are deleted after 2 days.
7. Deleting your account
You can delete your account in the app: Settings › Delete account. If you use Sign in with Apple on iPhone, you confirm with your Apple ID, and the app revokes SkyBudget's access to it.
On Android, deleting your account doesn't disconnect SkyBudget from your Google account or Apple ID. With Sign in with Google, you can remove the connection in your Google account settings (myaccount.google.com/connections). If the account also signs in with Apple, the app tells you where to remove SkyBudget from your Apple ID.
Deleting your account removes:
- your sign-in account and your profile (name, email, language);
- invite codes you made or used;
- your daily check-in settings and answers;
- if you're the household's only member: the whole household, with all its transactions, categories, corrections, recurring payments, debts, scan counts and receipt photos.
If other people are still in the household, you leave it and your name is removed. The household's shared data, including expenses you added, stays with the other members, linked only to an ID that no longer belongs to an account.
You can also ask us to delete your data by writing to hello@skywaylabs.io.
8. Your rights
Under the GDPR you have the right to:
- access your data and get a copy of it;
- correct it (most of it you can edit in the app);
- have it deleted;
- restrict its processing;
- data portability: the app exports your transactions to CSV (Settings › Export to CSV), and we'll provide your data on request;
- object to processing based on our legitimate interest;
- withdraw your consent to usage statistics at any time (Settings › Diagnostics).
To use any of these, write to hello@skywaylabs.io. We'll answer within a month.
You also have the right to lodge a complaint with the Polish data protection authority: the President of the Personal Data Protection Office (Prezes Urzędu Ochrony Danych Osobowych), ul. Stawki 2, 00-193 Warszawa, uodo.gov.pl.
9. No ads, no tracking, no selling
SkyBudget shows no ads, contains no advertising SDKs, doesn't use your phone's advertising identifier, doesn't track you across other apps or websites, and we never sell or rent your data. Usage statistics, if you allow them, are used only to improve SkyBudget, never for advertising. Data is shared only with the service providers named above, to run the app.
10. Changes
If we change this policy, we'll publish the new version here and update the date at the top.