Duo Sort

Duo Sort Privacy Policy

Last updated: 22 October 2026

This policy explains what data Duo Sort ("the game") uses, why, who receives it, how long it is kept, and the choices and rights you have.

Who is responsible

The controller of your personal data is Darius Andrei Aftan, an individual developer in Romania ("we", "us"), who publishes the game on Google Play as "Darius Development" and on the App Store as "Aftan Darius Andrei".

We have not appointed a data protection officer, because the law does not require one for a game of this size; write to the address above and we will answer ourselves.

The launch waitlist on our website

Before Duo Sort comes out, you can leave your email address on luviduo.com/duosort so we can tell you when the game is available. We store your email address, the phone you picked (iPhone or Android), your browser's language and the time you signed up, on Supabase's servers in the European Union. To stop abuse of the form, we count sign-ups per IP address hash for 10 minutes (see Keeping the servers safe).

We use your address only for one email on launch day, and we delete the whole list after that email has gone out. We don't add you to a newsletter, we don't use the list for ads and we don't share it. You can only sign up if you are 16 or older. To be taken off the list earlier, write to [email protected] from that address.

Playing without an account

You can play as a guest. Then your progress (levels, coins, café, purchases of coins and boosters, settings) is saved only on your phone, and deleting the game deletes it. We don't ask for your name, email, contacts, photos or location. A few things are still stored on your phone:

Guests can also open a Play in 2 room with a friend and send event summaries (see below).

Your account (optional)

Accounts are for players 13 or older. If you create one (with email, Sign in with Apple, Google or LuviDuo), we keep:

We email you only to confirm your address or reset your password. You can delete your account and everything saved with it at any time: see Delete your account.

Friends and the leaderboard

Play in 2 rooms

When you open a Play in 2 room, we create the room with a short code to share, a one-way hash of your random player ID (and your friend's when they join), your account ID if you are signed in, and when the room was made. The room closes 12 hours after the last join and is deleted one day later. While you play, the game sends your moves, your player name (only if you are signed in and 13 or older) and an "I'm here" signal with the current time through a private channel that only the two players in the room can use; these messages are not stored by us.

Tandem events

In a tandem event you ride as a team of two. We keep the team (its two members, the Luvi names shown on it, how far you got and the last stop each of you saw), every batch of pedals you give (how many, the day, the edition) and the requests for help you send your partner (from whom, to whom, at which stop, and the name of your Luvi). Pedals and requests are deleted after 60 days; the team stays until one of you deletes the account.

Invites

Signing in with LuviDuo

LuviDuo is our app for couples. If you choose Continue with LuviDuo or Connect LuviDuo and allow it in LuviDuo, the game receives:

While you are connected, we tell LuviDuo how many levels you have won in Duo Sort, together with your LuviDuo user ID, so LuviDuo can give you its own rewards for playing. We send only that number: nothing else about your game, your purchases or your friends.

LuviDuo then sends us changes to your Luvi (when it hatches, grows, is renamed or changes clothes) and tells us if your couple ends, if you disconnect Duo Sort, or if your LuviDuo account is deleted. We never receive anything about your partner (not their name, not their activity), nor your messages, moods or anything else from LuviDuo.

You can disconnect at any time in LuviDuo: Settings > Connected apps. Then we delete your couple's Luvi and the link. If your couple ends, the couple's Luvi is removed for both of you. Your Duo Sort account and progress stay unless you delete them. The LuviDuo sign-in itself (its user ID and email) stays on your account as a way to sign in until you delete the account.

Purchases and offers

Event summaries and ratings

At the end of each event edition, the game sends us a short summary to learn whether the event was fun and fair: your random player ID, the event and edition, the platform and build, how far you got, how many times and for how long you opened it, what you earned, spent and won, whether you looked at or bought a pack, how many reward ads you watched, the rating you gave (if any) and whether something went wrong. Guests send it too. It is linked to the random player ID, not to your account, so it is not deleted with your account; all summaries of an edition are deleted 90 days after that edition's last summary arrives.

Notifications

The game can send you notifications. Reminders that only your phone needs (your lives are full, the daily gift is ready, an event is ending) are set up on your device itself and never leave it. The rest come from our server, because only it knows them: a friend asking to play, your partner pedalling, a new chapter opening.

We never ask on your first launch. The question comes the first time you ask for a notification yourself, for example by tapping a bell to be told when your lives are back. You then pick what we may send, in three groups: Gameplay (lives, the daily gift, events, your café and Luvi), Friends (friend requests, tandem rides, invites and LuviDuo) and Offers (the piggy bank, offers and packs). Offers is off until you turn it on. Saying no leaves the rest of the game exactly as it is.

To send a notification from our server we need an account, and we keep one row for each of your devices with: the notification token that Apple's or Google's notification service gives us for that device (an opaque identifier that lets us address your phone, with nothing about you in it); whether it is an iPhone or an Android phone; the language the device is in, so the notification is in your language; your three choices above; your time zone offset, so nothing arrives between 22:00 and 09:00 your time; the age group your birth year puts you in; the app version; and when the device last opened the game. Nothing else about your device is kept: not its name, not its model, not its location, not what else is installed on it. We also keep a line for each notification we actually sent you (which notification it was, its group, the language it went out in and whether you opened it), so that we can keep to our own limits of at most a few a day and stop sending a kind of notification you never open. The notifications themselves carry no personal data about anyone else; a friend's notification shows only the public player name they chose.

The device row is deleted when you delete your account, when you sign out, when you turn all notifications off, when Apple or Google tell us the device no longer accepts them, and in any case after 180 days in which the game was not opened on that device. The record of notifications sent is kept for up to 400 days and then deleted.

You can change your mind at any time, in two places:

Players under 13 cannot create an account, so they get no notifications from our server at all: only the reminders their own device sets, and never anything about friends, purchases or offers.

Keeping the servers safe

To limit abuse, our server counts requests per account or, when there is no account, per one-way hash of the IP address. These counters are deleted after one day.

Service providers

ProviderWhat it receivesWhy
Google AdMob (Google LLC; for players in the EEA, Google Ireland Limited)Device and app information, IP address, advertising identifier (if allowed), ad interactions, and your consent choicesTo show ads, including rewarded ads you choose to watch; to measure ads and prevent fraud. Ads are personalised only if you agree in Google's consent form. For personalised ads Google acts as an independent controller under its own privacy policy.
Apple App Store / Google PlayPurchase transactionsTo process in-app purchases, as independent controllers. We never see your payment details.
RevenueCat, Inc. (United States)Your account ID (or a random ID for guests), purchase history and receipts, device and app informationTo verify purchases, restore them and report revenue, on our behalf.
Supabase (Supabase Pte. Ltd. and Supabase, Inc.)Everything our server keeps, as described in this policy, and your IP address when the game talks to itTo store your account, your saved game and the rest of our data, on servers in the European Union (Frankfurt), on our behalf.
Sentry (Functional Software, Inc., United States)The app version, the device model and operating system, the level and screen you were on, the steps in the game just before the problem, and a random identifier that tells reports from the same installation apart, but not your name, email address, IP address or device nameTo receive a technical report when the game crashes or hits an error, so we can find and fix it. Stored for us in the European Union (Frankfurt).
Resend (Plus Five Five, Inc., United States)Your email address and the email we send you (the code to confirm your address or reset your password)To deliver these account emails on our behalf.
GameAnalytics ApS (Denmark)Only if you allow it (see Your choices): your random player ID, device maker and model, OS version, country (from IP), session numbers, and gameplay events (levels started, won and lost, coins earned and spent, events played, buttons used, purchases made in the game). Never from players under 16.To understand how the game is played and improve it, on our behalf, as our processor.
Google (Firebase Cloud Messaging, Google LLC)The notification token of your device and the notification we ask it to deliver (its title and text, and which screen it opens)To deliver our notifications to your phone, on our behalf. Apple's own notification service delivers them on iPhones.
LuviDuo (us)Only if you connect it: see Signing in with LuviDuoLuviDuo is our own app; the same controller runs both.

Our processors (RevenueCat, Supabase, Sentry, Resend, GameAnalytics and Google for Firebase Cloud Messaging) may use data only on our instructions, under data processing agreements with us. Apart from your account, none of this is used to identify you. We don't sell your personal data and we don't share it with anyone else, unless the law requires it.

Bug reports. When you send a bug report (Report a bug in Settings, or by shaking the phone), we also receive what you wrote, a screenshot of the game screen unless you turn it off, and, only if you are an adult and choose to give one, an email address so we can reply. Players under 18 are never asked for an email address. We use crash and bug reports only to find and fix problems, keep them for up to 90 days, and never use them for advertising. To have a report deleted, write to [email protected].

Data outside the European Union

We keep our own server data in the EU, but some providers process data in other countries, mostly the United States. Each transfer is protected as the GDPR requires:

ProviderWhereHow the transfer is protected
Google (AdMob, Firebase Cloud Messaging)United States and Google's data centres worldwideGoogle LLC is certified under the EU-U.S. Data Privacy Framework; the European Commission's Standard Contractual Clauses apply as a fallback.
RevenueCatUnited States (Amazon Web Services, Snowflake)Standard Contractual Clauses in RevenueCat's data processing agreement.
SupabaseData stored in Frankfurt (EU); support staff in Singapore, the United States and elsewhere may access it only when needed for support or securityStandard Contractual Clauses with extra safeguards (encryption, access controls, audit logs).
SentryCrash and bug reports stored in Frankfurt (EU); some account-level settings in the United StatesFunctional Software, Inc. is certified under the EU-U.S. Data Privacy Framework; Standard Contractual Clauses as a fallback.
ResendUnited StatesResend (Plus Five Five, Inc.) is certified under the EU-U.S. Data Privacy Framework, and its data processing agreement also includes Standard Contractual Clauses.
GameAnalyticsDenmark (EU) company; data stored at Amazon Web Services in the United StatesStandard Contractual Clauses in GameAnalytics' data processing agreement and with its own providers.
AppleUnited StatesApple, as an independent controller, uses Standard Contractual Clauses.

You can ask us for a copy of these safeguards at [email protected].

Your choices

WhatLegal basis
Your account, saved game, friends, leaderboard, Play in 2 rooms, tandem events, invites and invite rewards, account emails (Resend), delivering and restoring purchasesPerforming our agreement with you: the game and the features you choose to use (Art. 6(1)(b) GDPR).
Personalised ads and the advertising identifierYour consent (Art. 6(1)(a)), given in Google's consent form and in the iOS tracking prompt, which you can withdraw in Privacy choices or the phone's settings.
Gameplay statistics (GameAnalytics)Your consent (Art. 6(1)(a)), which you can withdraw at any time in the game's Settings without affecting what was sent before. Never under 16.
NotificationsYour consent (Art. 6(1)(a)), given per group and withdrawn in the game's or the phone's settings.
The launch waitlist on our websiteYour consent (Art. 6(1)(a)), given with the tick box on the form, which you can withdraw at any time by email.
Signing in with LuviDuo and showing your couple's LuviYour consent (Art. 6(1)(a)), given in LuviDuo, which you withdraw by disconnecting.
Non-personalised ads, crash and bug reports (Sentry), event summaries and ratings, invite statistics, offers chosen on your phone, request counters and fraud preventionOur legitimate interest in running, securing, funding and improving a free game (Art. 6(1)(f)). You can object at any time (see Your rights).
Keeping purchase records after an account is deletedOur legal obligations for accounting and tax (Art. 6(1)(c)) and our legitimate interest in handling refunds and disputes (Art. 6(1)(f)).
Your birth year and the age rulesOur legal obligation to protect younger players (Art. 6(1)(c) and Art. 8 GDPR).

Storing and reading data on your phone that is not strictly needed for the game you asked for (the advertising identifier, gameplay statistics) happens only with your consent, as Romanian Law 506/2004 requires.

How long we keep data

DataKept for
Guest progress, birth year, consent choices and the random player ID on your phoneUntil you delete the game
Your account, player name, birth year and saved gameUntil you delete your account
Friend code and friendshipsUntil you remove the friend or delete your account; a declined request 30 days
Wrong friend code counts1 day
Play in 2 roomsUp to 12 hours after the last join, then deleted the next day; moves and presence are not stored
Tandem pedals and requests for help60 days
Tandem teamsUntil one of the two deletes the account
Invites, invite rewards and the invite device hashUntil you delete your account
Invite statistics120 days (without your account ID after you delete the account)
Event summaries and ratings (random player ID)90 days after the edition's last summary, also after you delete your account
Purchase records on our serverAs long as accounting and tax law requires (in Romania up to 10 years); after you delete your account, without your account ID
Your customer record at RevenueCatUntil you ask us to delete it, or under RevenueCat's own policy
Purchase records at Apple and GoogleUnder their own policies
Notification device rowsUntil you sign out, turn notifications off or delete your account, and at most 180 days after the game was last opened on that device
Record of notifications sent400 days
LuviDuo link and your couple's LuviUntil you disconnect, your couple ends, your LuviDuo account is deleted or you delete your Duo Sort account; records of the updates LuviDuo sent us 7 days
Launch waitlist (email, phone, language)Until the launch email has gone out, then deleted; earlier if you ask
Request counters (account or IP hash)1 day
Crash and bug reports (Sentry)Up to 90 days
Gameplay statistics (GameAnalytics)Up to 2 years
Emails you send to supportAs long as needed to help you, and at most 2 years after the conversation ends

Providers keep their own data under their own policies: Google, Apple, Supabase, RevenueCat, GameAnalytics, Sentry, Resend.

Children

The game is not directed at children under 13 and we don't knowingly collect their personal data. Players under 13 (or whose age is not known) can't create an account, have a player name, send invites or buy anything, and get ads meant for children. Players under 16 get no personalised ads and never send gameplay statistics. If you believe a child has given us personal data, contact us and we will delete it.

Your rights

Under the GDPR you have the right to:

To use these rights, email [email protected], if possible from your account's email address. For data linked only to your random player ID (crash reports, gameplay statistics, event summaries), tell us so and we will help you find it. We answer within one month and may ask you to confirm it is really you. It is free.

We don't make decisions about you that are based only on automated processing and have legal or similarly important effects.

Changes

If this policy changes, we'll update the date above and, for important changes, tell you in the game.