Important: You are responsible for your 3-word mnemonic
We do not store your 3-word mnemonic (master secret). It's required to decrypt your data each time you log in, as encryption happens in your browser (client-side) using a key derived from it. If you lose it, your data cannot be recovered. You are responsible for backing it up securely.
Last updated:
This service uses client-side end-to-end encryption. Secrets (credentials, passwords) are encrypted in your browser before they are sent to our servers. We store only encrypted data and project public keys - we never store your 3-word mnemonic (master secret). As a result, we cannot decrypt your secrets without your 3-word phrase.
Important: If you lose your 3-word mnemonic, we cannot recover your encrypted data. Please backup your 3-word phrase in a secure location (password manager, secure notes, hardware token, etc.).
Encryption uses modern, vetted cryptography (libsodium / X25519 / Curve25519 and authenticated encryption). The main steps:
We retain encrypted data and public keys until you delete them or your account. Because we cannot decrypt without your 3-word mnemonic, backups of the database are also encrypted from the perspective of your secrets.
Invited users can be granted access to a project according to the app’s sharing workflow. Access requires possession of the project private key (or another secure transfer mechanism you and the super user agree on).
If you share your private key with another user to grant access, that user will be able to decrypt and view the project secrets. You are responsible for sharing keys securely.
We do not set any cookies on this website. We do not use localStorage, sessionStorage, IndexedDB, or any other form of persistent client-side storage for tracking, advertising, or cross-site profiling. The only thing we may write to localStorage is a one-byte preference flag if you dismiss our privacy notice — it contains no personal data.
Analytics — Umami (self-hosted, cookieless). We use Umami to count page views and understand which pages are popular. Umami is privacy-friendly by design:
Do Not Track signal — analytics events are not sent if DNT is enabled.Lawful basis: legitimate interest (GDPR Art. 6(1)(f)) — operating and improving a free public website. Because no information is stored on or read from your device, this analytics is exempt from the prior-consent requirement of the ePrivacy Directive (PECR in the UK).
Fonts and third-party CDNs. We do not load fonts, scripts, or stylesheets from Google Fonts, Google Analytics, Facebook, or any other third-party CDN. All fonts are self-hosted, so your IP address is never exposed to a third party just by visiting our marketing site.
Operational sub-processors. To run the service we rely on a small set of trusted providers: Cloudflare (hosting and CDN, EU/global), Sanity.io (CMS for blog/news content, EU), and an email delivery provider for transactional emails. These providers process limited data on our behalf under data processing agreements and never receive plaintext secrets.
Server-side logs. We log events necessary to operate the service (authentication events, API usage, error traces). Logs do not contain plaintext secrets, master keys, or your 3-word mnemonic.
When adding a TOTP secret to a credential, Pwdly can generate a short-lived pairing link you scan with your phone camera. The phone-side page is anonymous — no account or sign-in is required on the phone. The pairing session exists only as a temporary database row (maximum five minutes) and is consumed and deleted once the secret is transferred. The TOTP secret itself is end-to-end encrypted between your phone and your desktop browser using a key embedded only in the URL fragment; the server receives and stores only ciphertext.
If you install the Pwdly browser extension, the following additional data practices apply.
The extension requests optional permission to run on all websites (<all_urls>). This permission is necessary for its core purpose: detecting login forms and autofilling your saved credentials on any site you visit. You are explicitly prompted to grant this permission when the extension is first installed, and you can revoke it at any time from Chrome's extension settings.
chrome.storage.session): A copy of your encrypted credentials is cached in Chrome's session storage to enable fast autofill. This cache is cleared automatically when the browser is closed or you lock your vault. Decrypted credentials are held only in volatile session memory and are never written to persistent storage.chrome.storage.local): Your Supabase session token is stored locally so you remain signed in between browser restarts.chrome.storage.local): Credentials captured from a login form but not yet confirmed are held temporarily until you accept or dismiss the save prompt.Depending on where you live, you may have rights over your personal data (access, correction, deletion, portability). To exercise these rights, contact us (see below). We will respond in accordance with applicable law.
Note: No online system is 100% secure. Our approach minimizes risk but cannot protect against every possible threat (for example, loss of your 3-word mnemonic or compromise of both client and user backups).
Our service is not intended for children under 16. We do not knowingly collect personal data from children under the applicable age without parental consent.
We may update this Privacy Policy from time to time. If changes are material, we will provide notice through the app or via email.
If you have questions about this Privacy Policy or your data, please contact us at: privacy@pwdly.app
No cookies. No tracking. No banners (almost).
We use privacy-friendly, cookieless analytics (Umami) to count page views — no personal data, no profiling, no third-party scripts. Read more.