Privacy policy
Last updated 2026-09-13
1 · In one line
WaChat keeps your WhatsApp chats on your device and in your own Google Drive (the hidden app folder). Your messages, media and encryption key never pass through our servers and we cannot read them. This applies to the Android app and to WaChat Web in the browser.
2 · What is stored, and where
| Data | Where | Who can read it |
|---|---|---|
| Messages, media, reactions | Your device (in the browser: local browser storage) + the hidden app folder in your Google Drive if you choose | Only you |
Your WhatsApp backup file (msgstore.db.crypt15) and export files (ZIP/TXT) you import on the web |
Processed inside your browser only (Web Worker) and kept in this device's local browser storage | Only you — not a single byte is uploaded to our servers |
| WhatsApp 64-digit encryption key | Your device only: in the app wrapped with Android Keystore; in the browser a non-exportable derived key is stored locally only if you agree | Only the app or browser on your device — never uploaded, never logged |
| Account name, email, photo | Firebase Authentication | To sign you in, link your devices and enable Plus |
| Subscription state (Plus/free, plan, expiry, country and price group at purchase) | Firestore entitlements/{uid} |
You (read) — written by our server after verifying with Google Play or the payment provider |
| Google Play purchase token (SHA-256 hashed) or the web payment provider's payment id | Firestore | Our server only — to link the subscription to your account and handle support and refunds |
| A chat or date range you share with a code | Firestore shared_chats, encrypted with a key derived from the password you choose |
Whoever knows the code and the password; expires as you set and is deleted when you revoke it or delete your account |
| Visitor country inferred from IP address (country code only; the address is not stored) | Used momentarily to pick language and prices; the country code is saved in the entitlement at purchase only | Our server |
| Abuse-protection counters (a hashed fingerprint of an IP or email, never the value itself) | Firestore, expire within a day | Our server only |
Language cookie wa_lang and theme preference |
Your browser | To show the site in your language and theme |
| Web-to-app pairing codes | Firestore (hashed, expire within minutes) | Whoever knows the code; the payload is sealed with your browser's key |
| Crash and usage data (anonymised) | Firebase Crashlytics / Google Analytics | To improve the product — no messages, names or keys |
3 · Subscription (WaChat Plus)
- In the app: payment through Google Play. We never see your card details. We receive the purchase token and its state (active / cancelled / refunded) to enable Plus on your account.
- On the web with crypto: payment through NOWPayments for a prepaid term that does not renew. From the provider we receive the payment id, status, amount, coin and network. The receiving address and the transaction itself are, by nature, public on the blockchain.
- On the web by card (coming soon): through a payment provider acting as Merchant of Record, which handles card data, taxes and invoices; your card details never touch our servers.
- Country-based prices: your country is determined from your IP address on our server at purchase time and fixed in your subscription. We do not store the IP address itself. We may decline or refund a purchase where the connection country and the payment method's country conflict (see the Refund Policy).
- When a subscription ends nothing is deleted. Only the extras switch off.
4 · Permissions
- In the app: Drive (hidden app folder only), access to the WhatsApp folder through the system file picker, contacts (optional, on your device only), notifications, camera only to scan a web-linking code, biometrics / device lock for the optional app lock (checked on the device, never sent), and an optional battery-optimisation exemption so nightly backups can run.
- In the browser: access only to the files or folders you pick (backup file, media folder) and local browser storage (OPFS / IndexedDB). We do not ask for camera or location.
5 · Analytics
We log generic events (e.g. "import started", "subscription screen opened") and anonymised crash reports. They never contain messages, names, numbers or keys. On the web you can switch analytics off in Settings; a consent banner is shown where the law requires it and to any visitor whose country we cannot determine. In the Android app anonymised crash and usage reports are sent; write to us if you want the data for your device deleted.
6 · Use of Google user data (Limited Use)
WaChat's use and transfer of information received from Google APIs adheres to the Google API Services User Data Policy, including the Limited Use requirements. We request only the drive.appdata scope and use it solely to store and read your own backups inside the hidden app folder. We do not use this data for advertising, do not sell it, do not transfer it to third parties, and no human reads it except with your explicit consent for support or where the law requires it.
7 · Retention
| Data | Kept for |
|---|---|
| Entitlement document, linked devices, share codes | While the account exists; deleted immediately when you delete the account |
| Web pairing codes | One hour at most |
| Abuse-protection counters | One day |
| Billing records (payment id, amount, date) | The period accounting law requires |
| Crash reports (Crashlytics) | 90 days |
| Analytics events | As set in Google Analytics retention settings |
8 · Where data is processed
Our servers (Cloud Functions and Firestore) run in the European Union (europe-west1). Google services (Firebase Authentication, Analytics, Crashlytics and Drive) run on Google's global infrastructure and may process data outside your country under Google's contractual safeguards.
9 · Cookies
wa_lang: your chosen language, one year, strictly necessary.- Theme preference: in the browser's local storage, strictly necessary.
- Google Analytics: only after your consent where consent is required; never advertising cookies.
10 · Deletion
- Web: Settings → Privacy → "Delete all data on this device" removes everything you imported in this browser immediately. Local data never existed on our side. Switching accounts in the same browser erases the previous account's local data automatically.
- Drive: deleting a chat in the app or on the web removes it from Drive if you choose; you can always revoke the app's access in Google Drive → Settings → Manage apps.
- Account: in the app, Settings → Account → Delete account; on the web, Settings → Delete account. Your account, entitlement document, linked devices and share codes are deleted immediately. Cancel any renewing Google Play subscription first. Billing records are kept for the period the law requires.
11 · Children
The product is not directed at children under 13.
12 · Changes
We will notify you in the app and on the site of any material change.
13 · Who is responsible, and your rights
- Data controller: Mohamed Mahmoud Sayed, an independent developer operating WaChat from the Arab Republic of Egypt. Contact: support@wachatplus.com.
- Applicable law: we process data in accordance with Egypt's Personal Data Protection Law No. 151 of 2020, without prejudice to the rights granted by mandatory data-protection laws in your country of residence (such as the GDPR for residents of the European Union).
- Your rights: access the data we hold about you, correct it, delete it, withdraw consent to analytics, and object to processing. Write to us and we reply within 30 days. You may also lodge a complaint with the data-protection authority in your country (in Egypt: the Personal Data Protection Center).