Back to Home

Privacy Policy

Version: 2026-03-20. This document describes how user data is processed in the application.

1. Data Controller and Contact

  • Data Controller: Tomasz Golaszewski.
  • Data inquiries: tomasz.golaszewski@outlook.com.
  • For data breach reports or exercising your data rights, contact the address above.

2. What Data We Process

  • Google account data required for authentication (e.g., identifier, email).
  • User content (resumes, job descriptions, LinkedIn imports) stored primarily on the user's own Google Drive.
  • Minimal technical metadata needed for the application to function (e.g., file indexes).
  • Public profile operational data (if the user enables this feature).

3. Purposes and Legal Basis (GDPR)

  • Service delivery (Art. 6(1)(b) GDPR — contractual necessity).
  • Security, fraud prevention, and operational stability (Art. 6(1)(f) GDPR — legitimate interest).
  • Compliance with legal obligations, where applicable (Art. 6(1)(c) GDPR).
  • User consent for analytics and marketing cookies (Art. 6(1)(a) GDPR).

4. Where Data Is Stored

  • Google Drive (appDataFolder) as the primary storage for user content.
  • The application server processes data temporarily in RAM and does not maintain persistent copies of user content.
  • Upstash Redis for minimal technical metadata.
  • Neon PostgreSQL — limited account data (authentication, credit wallet, transaction history).

5. Data Recipients / Sub-processors

  • Google — OAuth authentication, Google Drive API, Google Analytics 4, Google Tag Manager, Google AdSense.
  • Vercel — hosting, runtime infrastructure, Vercel Analytics and Speed Insights.
  • Upstash — Redis (technical metadata, rate limiting, daily operation counters).
  • Paddle — payment processor (transaction processing, billing data).
  • PostHog — product analytics (EU instance, loaded only after consent).
  • Microsoft Clarity — heatmaps and session recordings (loaded only after consent).
  • Sentry — error monitoring (technical session data, stack traces).
  • Better Stack — server logs and uptime monitoring.
  • Langfuse — AI call observability (costs, latency; no user content).
  • Resend — transactional email delivery (e.g., job digest).
  • Neon — PostgreSQL database (account data, credit wallet, transaction history).
  • AI Providers (OpenAI, Google Gemini, OpenRouter) — only to the extent necessary to fulfill AI requests. Content is processed in memory and not stored persistently.

6. Cookies and Analytics

  • Necessary — session cookies (NextAuth), language and theme preferences. Always active; no consent required.
  • Analytics — Google Analytics 4 (via GTM), PostHog (EU instance), Microsoft Clarity, Vercel Analytics. Loaded only after consent via the cookie banner.
  • Marketing — Google AdSense, Google Ads remarketing. Loaded only after consent for marketing cookies.
  • Tag management uses Google Tag Manager with Google Consent Mode v2 — scripts do not load without the appropriate consent.
  • We respect the browser's Do Not Track (DNT) header.
  • You can change your preferences at any time by clearing site data in your browser or rejecting cookies on your next visit.

7. Data Transfers Outside the EEA

  • Some infrastructure and AI providers may process data outside the European Economic Area (including Google, OpenAI, Microsoft).
  • In such cases, GDPR-compliant mechanisms are applied (e.g., Standard Contractual Clauses, EU-US Data Privacy Framework), as appropriate for each service.

8. Data Retention Periods

  • User content (resumes, jobs, cover letters): until deleted by the user or upon account deletion.
  • AI credits: expire 90 days after purchase/grant.
  • Payment transaction history: 7 years (tax/accounting obligation).
  • Technical metadata (Drive indexes, rate limiting): for the duration necessary for service operation.
  • Error logs (Sentry, Better Stack): per provider retention policy (typically 30–90 days).
  • Analytics data (GA4, PostHog, Clarity): per provider retention policy; anonymized after 14 months (GA4) / 12 months (PostHog).
  • Provider backup data may be deleted with a delay per their retention policies.

9. Automated Decision-Making and Profiling

  • The application uses AI models to generate content (resume tailoring, cover letters, ATS scoring). Results are advisory only and require user verification.
  • No decision affecting the user (e.g., employment) is made automatically by the application.
  • ATS scoring and AI suggestions do not constitute profiling under Art. 22 GDPR.

10. Your Rights

  • Right of access (Art. 15 GDPR) — export all your data as JSON via: Settings -> Privacy -> Download My Data.
  • Right to rectification (Art. 16) — edit your profile and resumes directly in the app.
  • Right to erasure (Art. 17) — delete your account in settings (details in section 11).
  • Right to restrict processing (Art. 18) — contact: tomasz.golaszewski@outlook.com.
  • Right to data portability (Art. 20) — JSON export (see above).
  • Right to object (Art. 21) — against processing based on legitimate interest.
  • Right to lodge a complaint with the Polish DPA (Prezes UODO) at uodo.gov.pl.
  • We respond to requests within 30 days.

11. How to Delete Your Account and All Data

  • In the app, go to: Settings -> Danger Zone -> Delete Account.
  • Confirm by typing DELETE. This action is permanent and irreversible.
  • Deletion covers your Cavi account data, public profile data, and all technical metadata associated with your account.
  • Billing data (Paddle transaction history) may be retained per tax obligations (7 years).

12. Security and Logging

  • We use TLS encryption in transit and follow the data minimization principle.
  • Data on Google Drive is encrypted with AES-256-GCM before storage.
  • Redis metadata is encrypted before storage.
  • Prompt injection protection (input sanitization before AI processing).
  • Rate limiting (Upstash Redis) on all API endpoints.
  • We limit logging of full resume content, job descriptions, and chat data.
  • Access to data and secrets follows the principle of least privilege.

13. Changes to This Privacy Policy

  • This policy may be updated due to legal, technical, or organizational changes.
  • The updated version is published on this page with the effective date.