What we collect
Account details: an email address if you choose email sign-in, or an anonymous local identifier when the app is running in zero-configuration demo mode. We do not ask for your name, phone number or address.
Content you create: the names, text, dates, links and photos you enter into a draft or publish. Drafts are private to your session; published pages are readable only by people with the link (and password, if you set one).
WhatsApp chat insights are optional. A plain-text export is parsed in your browser; the original file and message text are not uploaded. If you add the result to a gift, its aggregate counts, participant labels, dates and recurring words are saved as part of that draft.
Payment records: when you buy a template or the Sweetheart Pass, our payment provider processes the payment. We store an order reference, product, amount, currency, status and timestamps. We never see or store your full card details.
Basic operational logs: errors and rate-limit counters, kept to keep the service working and prevent abuse.
What we do not do
We do not sell your data, run advertising networks on published gifts, or use your photos to train AI models.
Recipients never see a sign-up form, cookie banner, advertisement or dashboard. They only see the gift.
We do not receive or store WhatsApp export files or message text. The optional analyzer keeps only summary insights in your browser until you choose to add them to a draft.
Where your data lives
Depending on how this deployment is configured, data is stored in Supabase (Postgres and authentication) and uploaded images in a private Cloudflare R2 bucket. The app streams images only to the owner or to a published gift's authorized visitors. Payments are processed by Dodo Payments, which acts as merchant of record. Hosting may be provided by Vercel or Cloudflare. Each provider processes data under its own terms and security commitments.
When the app runs with no external services configured, everything is stored locally by the server running the application. In that mode, data does not leave your machine except for the pages you deliberately share on your network.
How long we keep it
Published pages stay online until you unpublish or delete them, or until your account is deleted. Drafts stay until you delete them.
Payment records are retained for accounting and tax obligations even after account deletion, as required by law. They contain no card details.
When you use the account deletion option, the sign-in identity, drafts, published pages and uploaded R2 photos are deleted. Payment records are retained for accounting with the user association removed. Some provider backups may take a short period to expire.
Your choices
You can edit, unpublish or delete any page in your dashboard at any time. You can delete your account from the account page.
To request a copy of your data, correct it, or ask a question, write to hello@sweetheart.my. We will respond within a reasonable time and will never ask for your password.
Cookies
We use a small number of essential cookies: a session cookie for sign-in and, in demo mode, an anonymous identifier so your drafts belong to you. We do not use advertising cookies or third-party tracking pixels.
Children
sweetheart.my is intended for people aged 18 and over. Please do not use the service to publish images of minors without appropriate consent, and never publish someone's private information without their permission.