DRAFT — this document has not yet been reviewed by counsel and contains unresolved placeholders. Do not publish it in this state.

Intentionally Creative — Privacy Policy

Last updated: September 1, 2026 · rev 4

[INTENTIONALLY CREATIVE LEGAL ENTITY NAME, JURISDICTION], trading as Intentionally Creative ("Intentionally Creative," "we," "our" or "us"), respects the privacy of the people who use our apps and visit our website, and is committed to protecting it through compliance with this Privacy Policy ("Privacy Policy"). This Privacy Policy does not address the privacy practices of any third party we do not own or control.

Please read this Privacy Policy together with our Terms of Service, available at https://legal.alc.fyi/legal/terms.html.

By downloading or using our apps, you agree that we will collect and process personal information in accordance with this Privacy Policy. If you are not comfortable with any part of it, please stop using the apps.

Our apps are not intended for children. If you are a minor — under 16 in the European Union and the United Kingdom, under 13 in the United States, or under the minimum age at which you can consent to data processing where you live — you must not download or use our games or provide any personal information to us. Milestone has a stricter rule, because it is a family planning app: the person who installs it and owns the plan must be an adult. See Section 9 and Annex D.


The short version

Everything below is the long form of five sentences.

  1. None of our apps asks you to sign up. There is no email address, no password, no username and no profile. What each app has instead is an anonymous device account — a random identifier kept in your phone's keychain, created without asking you for anything — and its only job is to let the app store a copy of your own data for you and hand it back to the same phone. We never learn your name.
  2. The thing you make lives on your phone, and some of it is copied to a server we run ourselves. In the two games that copy is your game progress. In Before I Unpack it is your records and photographs, and only if you switch Backup on — it is off until you do. In Milestone it is the plan. The server is our own machine, operated by us; no third-party cloud service holds any of it. Section 2.4 and the annexes say exactly what is copied in each app, and what never is.
  3. What does leave is a closed list of counted events — screens opened, levels finished, a purchase completed — with no free text, no names, no amounts and no photographs in them. Every app enforces that list in code before an event reaches any provider.
  4. Our two games show ads. Our two utility apps show none, ask no tracking permission, and contain no advertising SDK at all.
  5. You can turn analytics off in every app, and "Delete everything" in each app's settings deletes both what is on the phone and what your account owns on our server. It asks the server first and refuses to wipe the phone if the server delete fails, so it can never tell you something is gone while it is still here.

Two promises we hold ourselves to by name, because they are the reason those two apps exist:

Before I Unpack: nothing leaves your phone until you switch Backup on, and Backup starts off. With it off there is no account, no session and no request of any kind. Switch it on and your records and photographs are copied to our own server — encrypted on the way there and encrypted at rest, but not end-to-end encrypted: we hold the keys, which is what the app itself says on the screen where you turn it on. Your key codes and the message you wrote to your landlord are never uploaded in either state. Anonymous usage analytics in that app is also off unless you turn it on.

Milestone: names, amounts, notes and photographs never appear in analytics. Not "we would not send them" — the app filters every event against an allowlist of permitted properties before any provider sees it, and anything not on that list is dropped. That is a promise about analytics, and only about analytics. The plan itself, names and photographs included, is stored on our own server so the owner's phone can get it back. Storing your plan for you and sending a counted event to an analytics provider are two different acts with two different rules, and Annex D keeps them apart.


Contents

  1. Scope and Applicability
  2. Personal Information That We Collect
  3. Why We Collect Your Personal Information
  4. How We Disclose Your Personal Information
  5. Your Rights and Choices
  6. Security
  7. Transfers of Your Personal Information
  8. Retention of Personal Information
  9. Children
  10. Changes to This Privacy Policy
  11. Contact Us
  12. Additional Notice to Individuals in the United States
  13. Additional Notice for California Consumers: California Notice at Collection
  14. Additional Notice to Individuals in the European Economic Area, United Kingdom, and Switzerland
  15. Additional Notice to Individuals in Brazil

1. Scope and Applicability

This Privacy Policy applies to personal information we collect when you:

The Apps and the Sites are together the "Services."

The per-app annexes are part of this policy, not a summary of it. Our four apps do genuinely different things with data, and the annex for the app you are using is the specific, binding statement for that app. Where an annex is narrower than the common sections, the annex governs.


2. Personal Information That We Collect

The sections below list the categories of personal information that may be collected across the Services. Not every category applies to every app — which categories apply to which app is set out in the annexes, and an app that does not contain a provider collects nothing through it.

2.1 Information you voluntarily provide us

Almost nothing, because no app asks you to register. None of them has a sign-up form, and none of them has a field for who you are.

We do not ask for, and the Apps have no field for, your name, postal address, phone number, date of birth, or a photograph of you. Names, phone numbers, addresses and photographs that you type or take inside an app — the people in a Milestone court, the address of the flat in Before I Unpack — are Section 2.4's subject rather than this one: we never ask for them, we never use them to identify you, and they are never sent to an analytics provider or an advertiser.

2.2 Information collected automatically

2.3 Information we receive from third parties

We do not buy personal information from data brokers, and we do not upload customer lists to advertising platforms to build custom or lookalike audiences.

2.4 Your account, our server, and what is stored on it

This is the most important section in this policy, and it is the one that changed in this revision. Read it before the annexes.

The account. Each app can create an anonymous device account for you. It is created silently, without a screen and without asking you for anything, because there is nothing to ask for: no email address, no password, no username, no profile, no phone number, no photograph of you. It is a random identifier that lives in your phone's keychain. When it is created differs by app, and the difference is deliberate:

AppWhen the anonymous account is created
Parcel RushAt first launch.
Pack PerfectAt first launch.
Before I UnpackOnly when you switch Backup on. Until you do, the app opens no connection of any kind and no account exists.
MilestoneAt the first write to the plan. Opening the app and reading the celebration packs does not create one.

The server. It is our own server infrastructure, operated by us: our own machine, running the open-source Supabase software we host ourselves, in a data centre in Ashburn, Virginia, United States. It is not a third-party "backend as a service", nothing is stored at supabase.com, and no other company holds your rows. Each app has its own database schema and its own private file bucket, and every table and bucket refuses to return anything to any account except the one that owns it.

What is stored on it, per app:

What never reaches the server in any app: your analytics choice; Before I Unpack's key codes and landlord message; and, in Milestone, the settings that belong to that phone rather than to the event.

None of this is analytics. Analytics is Section 2.2's closed list of counted events, and no photograph, name, amount or note is ever in one. This policy never uses one of those two things to describe the other.

Consistent with that, in every app:


3. Why We Collect Your Personal Information

We do not use your personal information to make automated decisions that produce legal or similarly significant effects about you.


4. How We Disclose Your Personal Information

We do not disclose personal information to co-sponsors, promotion partners or social platforms for their own marketing. We run no promotions, sweepstakes or contests, and no App has a social login.


5. Your Rights and Choices

5.1 Your privacy rights

Depending on where you live, you may have the right to:

5.2 The honest limit on access and deletion requests

We want to be exact about this rather than promise a process we cannot run.

We still hold no record we can look you up in. Your account has no email address, no password and no profile, so nothing on our side maps a row to a person. If you write to us from an email address, we cannot tell which account — if any — is yours, and we will not guess: matching a stranger's email address to somebody's photographs would be the worse of the two failures available to us.

Your phone can do what we cannot, and that is the design rather than an excuse. The account identifier lives in your phone's keychain, so the app is authenticated as you and as nobody else:

  1. Use the delete in the app — Section 5.4. It removes what is on the phone and the rows and files your account owns on our server, because the app is signed in as that account at the moment it asks.
  2. Take a copy without involving us. Before I Unpack exports the whole record as a PDF and Milestone's Exportar todo hands you the whole plan as a file, both on the device.
  3. Give us the pseudonymous identifier if you want analytics events already sent to be removed. Every app can show you its analytics identifier on request via support@get-creative.co, and with it we will ask our analytics provider to delete the associated event stream. Without it there is nothing for either of us to point at.

If you want us to act on one of the rights in Section 5.1 and the routes above do not cover it, email us anyway and we will tell you honestly what we can and cannot do from our side.

To make any request, email support@get-creative.co with the subject line "Privacy Rights Request." We will respond within the period the applicable law allows. Where the law requires us to verify your identity before acting, we will ask for what we need and no more; where there is nothing to verify against, we will tell you so instead of asking for a copy of your ID.

Your rights are not absolute. We may decline a request where the law requires or permits us to, where granting it would harm another person's privacy, or where it has no legal basis.

5.3 The switches in the apps

SwitchWhereWhat it controls
Share usage analytics / Share anonymous usage / Ayudar a mejorar la appSettings, every appProduct analytics (PostHog) and, in Before I Unpack and Milestone, attribution as well. On by default in Parcel Rush, Pack Perfect and Milestone; OFF by default in Before I Unpack. Turning it off stops collection at the app, not merely at the provider.
Ad & data choicesSettings, games onlyReopens the advertising consent form and shows your App Tracking Transparency status. Shown only when an ad unit is actually configured.
App Tracking TransparencyiOS Settings → Privacy & Security → Tracking, and the system promptWhether our games may use your advertising identifier. Our games ask once, at the moment you first choose an ad, never at launch. Saying no costs you nothing: the reward, the hint and the game are identical either way.
BackupSettings → Backup, Before I Unpack onlyWhether your records and photographs are copied to our server. Off until you turn it on, and with it off the app makes no request at all. The same screen offers Delete the backup, which removes the server copy and leaves the phone untouched.
Delete everything / Borrar mi cuentaSettings, every appSection 5.4.

5.4 Deletion

Every app has a destructive delete in its own settings, and it does what it says: it erases the app's saved content, its settings and the analytics bookkeeping stored on the device, and it deletes what your account owns on our server — the rows, and the files in that app's bucket — by calling a server-side delete_account routine that runs as your own account.

The order is server first, then phone. If the server delete fails, nothing on the phone is touched and the app tells you so, because an app that reported a deletion it had not performed is exactly the failure this path exists to prevent. Milestone goes one step further and reads the plan back afterwards, refusing to call it deleted while a row is still there.

One thing survives, and it holds nothing about you. The anonymous identity row itself — the empty account record, with no email address, no name and no profile in it — remains in the authentication system. Everything it owned is gone; the row is left because removing it is a separate operation and it contains no personal information to remove.

It cannot be undone and we cannot recover anything for you afterwards. If something matters to you, export it first.

It does not cancel or refund an App Store purchase. That purchase belongs to your Apple ID, and "Restore purchases" will bring it back on any device signed in to that Apple ID. Refunds are handled by Apple, not by us.

Full per-app instructions: https://legal.alc.fyi/legal/deletion.html.


6. Security

We use commercially reasonable administrative, technical and physical safeguards to protect personal information against unauthorized access, alteration, disclosure or destruction. Concretely:

What we do not claim: this is not end-to-end encryption. We hold the keys. That means we could in principle be compelled to hand over what is stored, and it means a breach of our server would be a breach of the content on it. Before I Unpack says exactly this, in its own words, on the screen where you switch Backup on, and this policy will not say anything softer than the app does. If that is not acceptable to you, leave Backup off — that app works completely without it.

No system is perfectly secure, and we cannot guarantee absolute security. We are not responsible for the security of information transmitted over networks we do not control. If you believe an interaction with us is no longer secure, tell us at support@get-creative.co.


7. Transfers of Your Personal Information

The limited data described in Section 2 is processed by providers that operate internationally, and it may be processed in the United States, the European Union and other countries where our providers maintain facilities. Those countries may have data protection laws that differ from those where you live.

Our own server is in the United States. The content Section 2.4 describes — your game progress, a Before I Unpack backup, a Milestone plan — is stored on our machine in a data centre in Ashburn, Virginia. Wherever you are, that is where it is, and it is not moved anywhere else. [OPEN ITEM — COUNSEL REQUIRED.] The transfer mechanism that applies to that storage for users in the EEA, the UK, Switzerland and Brazil depends on where our legal entity is established, which is unresolved. See OPEN-ITEMS.md.

Specifically, at the date of this policy: our product analytics for Parcel Rush, Pack Perfect and Before I Unpack is hosted in the European Union (PostHog EU Cloud), and for Milestone in the United States (PostHog US Cloud). Our attribution, advertising-mediation and purchase providers operate across multiple regions.

If you are in the EEA, the UK or Switzerland, see Section 14 for the transfer mechanisms we rely on. If you do not want your information transferred outside your country, stop using the Services and turn off analytics in the app.


8. Retention of Personal Information

We retain personal information only as long as needed for the purposes in this policy, or as required to meet legal obligations, resolve disputes and enforce our agreements.

In practice:


9. Children

Our Services are not directed to children and we do not knowingly collect personal information from a child below the minimum age in their jurisdiction.

Our games (Parcel Rush, Pack Perfect). You must not use them if you are under 16 in the European Union or the United Kingdom, under 13 in the United States, or under the minimum age of consent for data processing where you live. The games show advertising and, where allowed, use an advertising identifier; we do not operate them as child-directed services and they are not designed or rated for children.

Our utility apps (Before I Unpack, Milestone). These are adult tools. Milestone in particular:

The person who installs Milestone and owns the plan must be an adult — a parent, godparent or other adult organizer. The celebration's honoree is typically a teenager, and Milestone is built for her to take part on the account owner's device, under the account owner's supervision. Her side of the app is a view of the same plan, and her lane contains no money and no purchases: the budget does not exist in it, no amount, quota or vendor quote is ever shown to her, and she is never shown a paywall or a purchase prompt. This is enforced in the app, not by a policy sentence. There is no separate account for her and no login of her own. Her name, and the photographs in the plan, are stored on our server as part of the account owner's plan (Section 2.4) — that is the owner's own copy of her own celebration, held so that a lost phone does not lose it, and Borrar mi cuenta deletes all of it. Nothing about the honoree is ever sent to an analytics provider or an advertiser.

If you are a parent or guardian and believe a child has provided personal information to us, contact us at support@get-creative.co with the subject line "Request for Child Data Deletion – Parental Verification", and include:

We will take reasonable steps to confirm you are the parent or guardian before acting, and we may reply to your email address for confirmation. We will not ask you for more identification than the request needs.

In almost every case the complete remedy is immediate and in your hands, and it reaches our server as well as the phone: open the app, use "Delete everything" (Borrar mi cuenta in Milestone), and then delete the app. That one action deletes the rows and files the account owns on our side, not only the ones on the device. We will confirm it in writing and will delete any pseudonymous event stream you can identify to us.


10. Changes to This Privacy Policy

We may change this Privacy Policy from time to time. The "Last updated" date at the top will change, and the change takes effect on that date. If a change materially affects your privacy rights — for example, if an app begins collecting a category it did not collect before — we will give additional notice in the app itself before the change takes effect. Continuing to use the Services after a change means you accept it.


11. Contact Us

Questions about this Privacy Policy or our privacy practices:


12. Additional Notice to Individuals in the United States

12.1 Your rights

Depending on your state, you may have the rights listed in Section 5.1, including the right to know/access, correct, delete, port, opt out of sale or sharing for targeted advertising, opt out of profiling with legal or similarly significant effects, appeal a refusal, obtain a list of third parties to whom we have disclosed personal information, and not be discriminated against for exercising any of them. Where a right is not provided to you by law, we may still honor it at our discretion.

We do not engage in profiling that produces legal or similarly significant effects.

12.2 Submitting a request

Email support@get-creative.co, tell us which right you want to exercise and which app it concerns. See Section 5.2 for what we can and cannot look up. State law may limit how often you may make certain requests in a 12-month period.

12.3 Sale and sharing, and how to opt out

You can opt out at any time, and all three of these work:

  1. In the game: Settings → Ad & data choices, and turn off Share usage analytics.
  2. On your device: iOS Settings → Privacy & Security → Tracking, and turn off tracking for the app. With tracking off, the advertising identifier is unavailable and the ads you see are non-personalized.
  3. Email us at support@get-creative.co with "Do Not Sell or Share My Personal Information" in the subject line.

Opt-out preference signals. Our apps are not browsers and do not receive a browser signal. On our website, if and when we run any advertising technology there, we will honor the Global Privacy Control signal and say so here.

12.4 Authorized agents

You may use an authorized agent where your state allows it. The agent must give us your written, signed permission, and we may ask you to confirm the authorization directly.


13. Additional Notice for California Consumers: California Notice at Collection

If you are a California resident, this section applies in addition to the rest of this Privacy Policy. The California Consumer Privacy Act as amended by the California Privacy Rights Act ("CCPA") requires the disclosures below.

13.1 Categories collected, used and disclosed

In the preceding 12 months, depending on which app you used, we may have collected these categories of personal information (Cal. Civ. Code §1798.140(v)(1)):

CategoryExamples in our appsPurposesDisclosed to
(A) IdentifiersYour anonymous account identifier (a random user id, no email address, no password, no profile); pseudonymous analytics ID, AppsFlyer ID, RevenueCat anonymous app user ID, IDFV; IDFA in our two games only, and only with your ATT permission; IP address (used for coarse country and then discarded)Operate the apps; understand and improve them; measure advertising; serve ads (games); security; legal complianceService providers; advertising partners (games only); professional advisors; legal/safety; an acquirer
(B) Customer recordsYour email address only if you email us. Separately, and only in the copy on our own server: the names and phone numbers you put into a Milestone plan, and the address you put into a Before I Unpack record — information about other people and about a property, given to the app by youCustomer support; and, for the second group, holding your own data for you so the app can give it backService providers (email); professional advisors; legal/safety. The Milestone and Before I Unpack content is disclosed to nobody
(D) Commercial informationProduct purchased, transaction and entitlement statusOperate the apps; support; legal and tax complianceService providers; professional advisors; legal/safety; an acquirer
(F) Internet or network activityApp version, screens viewed, product-interaction events on each app's declared list, ad events (games only)Understand and improve the apps; serve and measure ads (games); securityService providers; advertising partners (games only); an acquirer
(G) Geolocation dataCoarse, country/region level only, derived from IP by our advertising and attribution providers in the games. No precise location, ever, in any appServe and measure advertising; regional pricing and languageService providers; advertising partners (games only)
(H) Sensory informationOnly in the copy on our own server: the photographs and voice notes in a Before I Unpack backup, which exists only if you switched Backup on, and the photographs in a Milestone plan. Never in analytics, never to an advertiser, never to any third partyHolding your own data for you so the app can give it backNobody — see the infrastructure exception in Section 4
(J) InferencesCoarse interest signals drawn by advertising partners in our gamesAdvertisingAdvertising partners (games only)

Categories we do not collect: (C) protected classification characteristics; (E) biometric information; (I) professional or employment information; education information; and sensitive personal information as defined by the CCPA. We do not use or disclose sensitive personal information for purposes requiring a right to limit. In particular, the contents of your communications are never uploaded: the message Before I Unpack helps you write to your landlord, and your key codes, stay on the phone and are excluded from the backup by the code that builds it.

Sale and sharing: see Section 12.3. We do not knowingly sell or share the personal information of consumers under 16 years of age.

Retention: see Section 8.

13.2 Shine the Light

California Civil Code §1798.83 permits California residents with an established business relationship with us to request information about disclosures of certain personal information to third parties for those third parties' own direct marketing purposes in the preceding calendar year. We make no such disclosures. If you would like that confirmed in writing, email support@get-creative.co, say you are a California resident making a "Shine the Light" inquiry, and we will respond. This request may be made once per calendar year.


14. Additional Notice to Individuals in the European Economic Area, United Kingdom, and Switzerland

14.1 Our relationship to you

We are the data controller for personal information collected through the Services. Our providers act as processors on our instructions, except for the advertising networks in our games, which act as independent controllers for their own advertising purposes and to which you consent through the consent form shown in the game.

The content stored on our own server (Section 2.4) has no third-party processor holding it at all — we run the machine ourselves. The only other companies involved are the data-centre operator and the two backup-storage providers named in Section 4, which act as processors on our instructions and on nothing else.

PurposeLegal basis
Operating and administering the Apps; delivering and restoring a purchase; responding to your support requestPerformance of a contract with you, or steps at your request before entering one — Art. 6(1)(b) GDPR
Security, fraud prevention, and complying with tax, accounting and other legal obligationsCompliance with a legal obligation — Art. 6(1)(c) GDPR
Defending legal claims; a merger, acquisition or sale of the business; instructing professional advisorsOur legitimate interests in operating and protecting the business, where not overridden by your rights — Art. 6(1)(f) GDPR
Storing your game progress on our server so it survives a reinstall or a new phone (Parcel Rush, Pack Perfect)Performance of a contract with you — Art. 6(1)(b) GDPR
Storing the plan on our server (Milestone)Performance of a contract with you — Art. 6(1)(b) GDPR
Backup (Before I Unpack)Your consent — Art. 6(1)(a). It is off until you switch it on, on a screen that states what it is and what it is not, and turning it off or deleting the backup withdraws it
Product analytics (PostHog)Your consent — Art. 6(1)(a). It is a switch in every app's Settings, and in Before I Unpack it starts off
Attribution (AppsFlyer)Your consent — Art. 6(1)(a)
Advertising and any use of an advertising identifier (games only)Your consent — Art. 6(1)(a), collected through the in-game consent form and Apple's App Tracking Transparency prompt

You may withdraw consent at any time, in the app's Settings or in your device's tracking settings. Withdrawal does not affect processing carried out before you withdrew.

14.3 Your rights

You have the rights of access, rectification, erasure, restriction, objection and portability, and the right not to be subject to a decision based solely on automated processing with legal or similarly significant effects — we make no such decisions. Please read Section 5.2 first: because we hold no identifier that maps to you, the fastest complete route for erasure is the in-app delete.

You have the right to lodge a complaint with your supervisory authority. In the UK it is the Information Commissioner's Office (ico.org.uk); in Switzerland the Federal Data Protection and Information Commissioner (edoeb.admin.ch); in the EEA, your national data protection authority.

14.4 Marketing

We do not run an email marketing programme from app data, because the apps collect no email addresses. If we ever contact you electronically for marketing, it will be with your prior consent or as otherwise permitted by law, and every message will carry a one-click unsubscribe.

14.5 International transfers

Where we transfer personal information out of the EEA, the UK or Switzerland, we rely on the European Commission's Standard Contractual Clauses (with the UK International Data Transfer Addendum where applicable), on an adequacy decision covering the recipient country, or on the EU-U.S. Data Privacy Framework where the recipient is certified. Our product analytics for the three apps named in Section 7 is hosted in the EU precisely to reduce the number of such transfers. Our own server, which holds the content in Section 2.4, is in the United States, and the mechanism that applies to it is the open item flagged in Section 7. You may request a copy of the relevant safeguards at support@get-creative.co.


15. Additional Notice to Individuals in Brazil

If you are in Brazil, the Lei Geral de Proteção de Dados (Law 13.709/2018, "LGPD") applies to our processing of your personal data, and we are the controlador.

Milestone is offered in Brazilian Portuguese with a Brazilian celebration pack, so this section is not boilerplate for us.


Annex A — Parcel Rush

A puzzle game. Shows ads. Asks for tracking permission once.

Bundle identifier: co.getcreative.parcelrush

AccountAn anonymous device account, created silently at first launch. No name, email address, password, username or profile exists in the app — it is a random identifier held in your phone's keychain
Stored on our serverYour game progress, and only that: boards cleared and their results, coins and stars, streaks, daily-run results, fleet unlocks, album entries, how you have arranged the yard, and which purchase is active. The game plays identically with no signal, and a write that fails is queued and retried rather than lost
Where your copy is keptOn our own server infrastructure, operated by us — our own machine in a data centre in Ashburn, Virginia, United States. Not a third-party cloud service; nothing is stored at supabase.com; no other company holds these rows
AnalyticsPostHog. On by default; switch in Settings → Share usage analytics. Session replay off, autocapture off, vendor lifecycle events off
AttributionAppsFlyer, started only after the tracking prompt is answered
AdvertisingAppLovin MAX — rewarded videos you choose to watch, plus interstitials. There are no banner, MREC or app-open ads. Interstitials are capped at four a day, never appear on your first day or in your first session, never appear before board 15, require three boards between them, and never appear within a minute of a rewarded video
PurchasesRevenueCat. One non-consumable, "Remove ads." No subscription, no consumables, no loot boxes, no purchasable currency — coins come only from play and no level is ever unlocked with money
ATT promptYes — once, at the first ad moment, never at launch. Refusing costs you nothing: the reward is the same, nothing is hidden, and the app does not ask again
Data categoriesDevice and advertising identifiers (IDFA only with ATT permission), device and system information, coarse country from IP, gameplay and screen events on the app's declared list, ad events, purchase records
Never collectedName, email, phone, address; precise location; photos, camera, microphone, contacts, calendar, health; crash data — the app contains no crash-reporting SDK
Never in analytics, and never sent to any providerThe board you are solving and how you have arranged your yard. Those are part of the cloud save above, which goes to our server and nowhere else
Analytics hostingPostHog EU Cloud
DeletionSettings → Delete everything (also reachable as Delete account). It deletes your rows on our server first, and only then erases the save, the yard, the settings and the analytics bookkeeping on the device — if the server refuses, nothing is deleted anywhere and the app says so. Does not cancel your App Store purchase — use Restore purchases to bring it back

Annex B — Pack Perfect

A packing puzzle game. Shows one kind of ad — a rewarded video you ask for.

Bundle identifier: co.getcreative.packperfect

AccountAn anonymous device account, created silently at first launch. No sign-in screen, no email address, no password and no profile — a random identifier held in your phone's keychain
Stored on our serverYour game progress, and only that: progress and settings, board results, trips, album postcards, streaks, cosmetics owned, and which purchase is active. The game plays identically with the radio off; failed writes queue, retry, and are surfaced in Settings rather than dropped
Where your copy is keptOn our own server infrastructure, operated by us — our own machine in a data centre in Ashburn, Virginia, United States. Not a third-party cloud service; nothing is stored at supabase.com; no other company holds these rows
AnalyticsPostHog. On by default; switch in Settings → Share anonymous usage. Session replay off, autocapture off, vendor lifecycle events off
AttributionAppsFlyer, started only after the tracking prompt is answered
AdvertisingAppLovin MAX — rewarded video only. There is no interstitial, app-open, banner or MREC ad unit for this app, and no code path that could request one
PurchasesRevenueCat. One non-consumable, "Pack Perfect Complete." No subscription, no consumables, no loot boxes, no coin pack — coins come from packing and nothing sells them
ATT promptYes — once, and only when you tap "Watch a short video for one hint." Not at launch, not in onboarding, and there is no pre-permission interstitial. Say no and the video still plays, the hint still arrives, and nothing about the game changes
Data categoriesProduct-interaction events on the app's declared list, purchase records, device identifiers (IDFA only with ATT permission), ad events
Never collectedName, email, phone, address; precise location; contacts, photos, health, financial information; a price in an event — an event carries an offering and a product id, never an amount
Never in analytics, and never sent to any providerYour rooms, your album, your streak and the board you are halfway through. Those are part of the cloud save above, which goes to our server and nowhere else
Analytics hostingPostHog EU Cloud
DeletionSettings → Delete everything. It deletes your rows on our server first, and only then clears the save, the album snapshot and the growth module's own store, including your analytics choice — if the server refuses, nothing is deleted anywhere and the app says so. Does not cancel your App Store purchase — the sheet says so, and Restore purchases brings it back

Annex C — Before I Unpack

A move-in condition record. No ads. No tracking prompt. Backup off unless you turn it on, and analytics off unless you turn it on.

Bundle identifier: co.getcreative.beforeiunpack

Nothing leaves your phone until you switch Backup on, and Backup starts off. With it off there is no account, no session and no request of any kind — not one. Switch it on and your records and the original photographs and voice notes are copied to our own server, as a second copy: they stay on the phone as well. Your key codes and the message you wrote to your landlord are never uploaded, in either state. The PDF you export is created on your device and goes where you send it.

What Backup is not: it is not end-to-end encrypted. Files are encrypted on our server and on the way there, but we hold the keys — so in principle we could be made to hand them over. If that matters to you, leave it off; every part of this app works without it.

AccountAn anonymous device account, created only when you switch Backup on, and never before. No email address, no password, no username, no profile — a random identifier held in this phone's keychain. Because there is no email address on it, the account belongs to this phone: Backup survives deleting and reinstalling the app, and it does not yet survive losing the phone. The app says so on the Backup screen rather than letting you assume otherwise
BackupSettings → Backup. Off by default; opt-in; the only network path in the product. With it on: your places and addresses, records, rooms, meter readings, key-set counts, inventory, the notes you wrote, and the original photographs and voice notes are copied up while the app is open. Photographs above 5 MB are refused by the bucket and stay on the phone at full size, counted and shown to you rather than silently skipped. Turn Backup off stops copying and leaves the server copy in place; Delete the backup removes the server copy and leaves the phone untouched
Never uploaded, Backup on or offYour key codes, and the subject and body of the message you wrote to your landlord. They have no column in the backup and the code that builds each row leaves them out deliberately
Where your copy is keptOn our own server infrastructure, operated by us — our own machine in a data centre in Ashburn, Virginia, United States. Not a third-party cloud service; nothing is stored at supabase.com; no other company holds these rows
AnalyticsPostHog — OFF by default. This is the one app in the family where the switch starts off, and it starts off deliberately: with Backup off the app says "Everything is on this phone and nowhere else," and shipping usage data from an app that says that would make the sentence false. Settings → Share anonymous usage: "Never your photos, your notes or your address. Off unless you turn it on"
AttributionAppsFlyer — and it does not start until you turn analytics on. Advertising identifiers are disabled at the SDK before it starts, so no IDFA is ever read, and device-name collection is disabled. Attribution runs through Apple's SKAdNetwork, which is aggregated and carries no user identifier
AdvertisingNone. There is no ad SDK in this app
PurchasesRevenueCat. One non-consumable full unlock. No subscription. RevenueCat is the single provider configured at launch, before the analytics question — because someone who paid must get what they paid for on a fresh install, and holding an unlock hostage to an unrelated second "yes" would be the dark pattern, not the fix. It receives a transaction and an anonymous app user ID it generates itself; we never send it a name, an email or a subscriber attribute
ATT promptNever. This app ships no tracking usage description and will never prompt
What analytics receives, exhaustively, and only after you opt insession_start, screen_view (a route pattern such as place_room), photo_captured (the kind of room, such as "kitchen" — never its name), activated, record_completed (counts and minutes), pdf_exported (format and country), landlord_sent, moveout_started, compare_reviewed, paywall_view, and the purchase lifecycle events. The app's code refuses any property not on this list
Also off by decisionSession replay (it would record a screen full of photographs of your home), autocapture, vendor lifecycle events, crash/error autocapture (our own error strings name files on your phone), and the analytics provider's IP-based location lookup
Never collected by any provider, and never in analyticsYour photographs and their file paths; voice notes; notes; your address; your landlord's email; meter readings; the app's own on-device diagnostics counters; precise location; your device's name. This row is about analytics, attribution and advertising. What Backup copies to our own server is the Backup row above, and none of it goes to any of those providers
Analytics hostingPostHog EU Cloud
DeletionTwo deletes, and they are deliberately not the same one. Settings → Backup → Delete the backup removes every file and every row from the server, along with the account itself, and leaves the phone untouched. Settings → Delete everything on this phone destroys the local record. Between them there is nowhere a copy can survive

One honest consequence, stated because it is ours to carry, not yours: because analytics starts off, every number this app produces describes the people who opted in, and they are not a random sample of its users. The same is true of Backup: most people who use this app will never have a copy on our server, and that is the outcome the default was chosen for.


Annex D — Milestone

A celebration planner (quinceañera, festa de 15 anos, debut, sweet sixteen). No ads. No tracking prompt.

Bundle identifier: co.getcreative.milestone

Names, amounts, notes and photographs never appear in analytics. Not as a promise of restraint — the app filters every event against an allowlist of permitted properties before any provider sees it, and anything not on that list is dropped and logged as an error. Every event in the app's taxonomy is tested against that refusal.

Never appears in analytics, in any event, ever: the honoree's name and everyone else's; any amount, budget, quota or vendor quote; every note anyone typed; every photograph and every file path to one; phone numbers; the venue, the address, the church and the date; which app a card was shared to; and any row identifier — screen names are normalized so that an id can never ride along in one.

That is a statement about analytics. The plan itself is stored on our own server so the owner's phone can get it back, and the row below says exactly what that includes. The two lists are different on purpose, and this annex will never let one stand in for the other.

AccountAn anonymous device account, created at the first write to the plan — opening the app and reading the celebration packs creates nothing. No email address, no password, no username, no profile: a random identifier held in the phone's keychain
Stored on our serverThe owner's plan. The event; the people in it, with their names and phone numbers; the court and the padrinos; the sequence of the ceremony; the decisions; rehearsals; day-of items; the thank-you list; and the photographs, uploaded as files into this app's own private bucket. Money — amounts, budget items, totals and vendor quotes — is stored in separate tables that the honoree's side cannot reach, because a fence around a column is not something a database can enforce and a fence around a table is
Not stored on our serverThe settings that belong to that phone rather than to the event: the lens the app is showing, the notification choice, the analytics choice, and the dress-fitting grouping. There is no column for any of them
Where your copy is keptOn our own server infrastructure, operated by us — our own machine in a data centre in Ashburn, Virginia, United States. Not a third-party cloud service; nothing is stored at supabase.com; no other company holds these rows
Who may own the planAn adult. See Section 9
The honoree's sideA view of the same plan on the same device, under the account owner's supervision. No money and no purchases: the budget route does not exist in it, no amount or quote is ever shown, and no paywall or purchase prompt can be reached from it. Enforced in the app, and enforced again in the database by keeping every amount in its own tables rather than in a column beside her name
AnalyticsPostHog. On by default, opt out in Ajustes → Ayudar a mejorar la app, drawn only when a provider is actually configured. Turning it off stores the choice in the plan document (so it is included in Exportar todo and destroyed by Borrar mi cuenta), stops event collection at the app, opts the analytics provider out, and stops attribution
AttributionAppsFlyer, started with advertising identifiers disabled, so no IDFA is collected. SKAdNetwork only, which reports without a tracking prompt
AdvertisingNone. There is no ad SDK in this app, and no SKAdNetwork publisher configuration, because we show no ads
PurchasesRevenueCat. One non-consumable celebration pack. No subscription and there never will be one — a fourteen-month plan billed monthly would punish a long engagement
ATT promptNever. Nothing in this app meets Apple's definition of tracking, which is exactly why there is no prompt
What analytics receivesEvent names from the app's declared taxonomy with allowlisted properties only — for example decision_made carries a step key and which side of the app made it, court_added carries a group key such as "damas" and a count, and padrino_confirmed carries no properties at all — plus the app's locale
Also off by decisionAutocapture (it reads the text of the views it touches, and in this app that text is a girl's name), session replay (it would record her photographs), vendor lifecycle events, and the analytics provider's IP-based location lookup
Analytics hostingPostHog US Cloud
RemindersMilestone can remind you about a rehearsal or a fitting. Those are local notifications the phone schedules for itself — there is no push service, no push token and no server; the build strips the push entitlement it does not use. Declining the notification permission costs you nothing: the app's own list becomes the reminder, and it says so
ExportAjustes → Exportar todo hands you the whole plan as a file, on your device
DeletionAjustes → Borrar mi cuenta. The server first: every photograph is removed from the bucket, then the plan and everything hanging off it is deleted, then the app reads the event back and refuses to call it deleted while a row is still there. Only after that is the plan, are the photographs and are the settings destroyed on the device. A failure at any step leaves the phone exactly as it was and says so. Does not cancel your App Store purchase — Restore purchases brings it back

Change log