Last updated: 5 April 2026 · Effective: 5 April 2026
RetainLab ("we", "us", "our") operates retainlab.io, a B2B SaaS platform for customer retention analytics. This Privacy Policy explains what personal data we collect, why we collect it, how we use it, and your rights under the General Data Protection Regulation (GDPR) and applicable Dutch and EU law.
Data controller (your account data): RetainLab, retainlab.io · privacy@retainlab.io
Data processor (your customers' data): When you connect your Stripe account, RetainLab processes your subscribers' data on your behalf. In that context you are the Data Controller; we are the Data Processor. See Section 5.
| Category | Data | Source | Our role |
|---|---|---|---|
| Account | Name, email address, password (hashed) | You, via Clerk | Controller |
| Billing | Subscription plan, payment status, Stripe Customer ID | Stripe | Controller |
| Usage | Dashboard interactions, feature usage, login timestamps | Automatically | Controller |
| Your customer data | Your Stripe subscribers: name, email, MRR, subscription status | Your Stripe API key | Processor |
| API credentials | Stripe restricted API key (encrypted at rest, AES-256) | You | Processor |
| Communications | Emails we send you (welcome, dunning reminders, trial alerts) | Resend | Controller |
We engage the following sub-processors to deliver the Service. All are bound by GDPR-equivalent data protection obligations.
| Processor | Purpose | Location | Transfer mechanism |
|---|---|---|---|
| Clerk (clerk.com) | Authentication, user management | USA | SCCs (2021) |
| Stripe (stripe.com) | Payment processing, subscription management | USA | SCCs (2021) |
| Supabase (supabase.com) | Database hosting | EU (Frankfurt) | EU, no transfer |
| Resend (resend.com) | Transactional email delivery | EU (Ireland) | EU, no transfer |
| Hetzner (hetzner.com) | Server infrastructure | EU (Nuremberg) | EU, no transfer |
We will notify you of any changes to sub-processors that materially affect the processing of your data. We add or replace sub-processors only after implementing equivalent contractual protections.
When RetainLab accesses your Stripe account data, we act exclusively as a Data Processor under GDPR Art. 28. This means:
A full Data Processing Addendum (DPA) compliant with GDPR Art. 28, including Standard Contractual Clauses for any non-EEA transfers, is available on request at legal@retainlab.io.
Your Stripe API credentials are stored encrypted at rest using AES-256 encryption. We strongly recommend using a restricted API key with only the minimum permissions required (read access to customers and subscriptions). We never store or transmit payment card data — Stripe processes all payments directly. If you suspect your API key has been compromised, revoke it immediately in your Stripe dashboard and reconnect.
To exercise any right, email privacy@retainlab.io. We respond within 30 days (extendable by a further 60 days for complex requests, with notice). You may also lodge a complaint with the Dutch DPA: autoriteitpersoonsgegevens.nl.
We implement technical and organisational measures under GDPR Art. 32 including: TLS 1.2+ encryption in transit, AES-256 encryption at rest for sensitive credentials, role-based access controls, server-side authentication for all API endpoints, and regular security reviews. Payment card data is never stored on our servers. Stripe handles all card processing and is PCI DSS compliant.
We use strictly necessary cookies for authentication (Clerk session token) and CSRF security. We do not use tracking, advertising, or third-party analytics cookies. No consent banner is required for strictly necessary cookies under ePrivacy Directive Art. 5(3) and the Dutch Telecommunications Act.
Your account data is processed primarily within the EU (Hetzner, Supabase, Resend). Where data is transferred to the USA (Clerk, Stripe), such transfers are protected by Standard Contractual Clauses (EU Commission Decision 2021/914). No transfers are made to countries without an adequacy decision or appropriate safeguards.
We will notify you of material changes via email at least 14 days before they take effect. The updated policy will be published at retainlab.io/privacy. Continued use after the effective date constitutes acceptance.