Privacy Policy

Last updated: September 14, 2026

Deptools SAS ("Deptools", "we", "us", or "our") is committed to protecting your personal data and respecting your privacy. This Privacy Policy explains what data we collect when you use deptools.io and our public documentation at deptools.io/docs, why we collect it, how we process it, and what rights you have under the General Data Protection Regulation (GDPR) and applicable French law.

By creating an account or using our services, you acknowledge that you have read and understood this policy.

Data controller

Deptools SAS

84 rue de Buzenval, 75020 Paris, France

Privacy contact

privacy@deptools.io

Supervisory authority

CNIL (Commission Nationale de l'Informatique et des Libertés)

Hosting

OVH SAS — Gravelines (GRA), France

1. Data We Collect

Account information

When you register with an email and password, we collect:

  • Display name
  • Email address
  • Password (stored as a one-way hashed value. We never store your plain-text password)

GitHub OAuth data

When you sign in or link your account via GitHub, we receive and store:

  • GitHub user ID and username
  • Email address provided by GitHub
  • OAuth access token (used to access repositories on your behalf)
  • Organization memberships (admin-only, for organization setup)

Requested OAuth scopes: read:user, user:email, read:org

Google Sign-In data

When you sign in or sign up with Google, we receive and store:

  • Google account ID (the sub claim, a stable identifier that is never your email)
  • Email address and whether Google has verified it
  • Display name
  • Profile picture URL

No Google access token is requested or stored. Deptools only verifies the identity token Google issues at sign-in, which requires no token of its own, and never gains access to any other Google service such as Gmail, Drive or Calendar.

Requested scopes: openid, email, profile. Signing in with Google does not connect a GitHub account; you can connect one later from your settings.

GitHub App data (Pro plan)

Pro plan users connect their GitHub organization via our GitHub App, which grants Deptools access to private repositories. The GitHub App requests the following permissions:

  • Repository contents: read • to read dependency manifest files (e.g. package.json, pom.xml, build.gradle, etc.)
  • Repository metadata: read • to access repository name, visibility, and default branch
  • Organization members: read • to verify organization membership during setup

We do not access source code beyond dependency manifest files. GitHub App access can be revoked at any time from your GitHub organization settings.

Repository and analysis data

To provide our dependency analysis service, we access and store:

  • Repository metadata: name, owner, default branch, visibility (public or private)
  • Dependency manifest files (e.g. package.json, pom.xml, build.gradle, etc.)
  • Computed dependency graphs and security scores
  • Vulnerability data from OSV (Open Source Vulnerabilities), which aggregates the National Vulnerability Database (NVD) and the ecosystem advisory feeds, including GitHub Security Advisories
  • Scan logs: user ID, organization, repository identifier, and timestamp of each analysis

Analysis results are stored as JSON files on our OVH server in Gravelines, France. We do not access your source code beyond the dependency manifest files required to perform the analysis.

The visibility of a project on Deptools mirrors its visibility on GitHub: analysis dashboards for public GitHub repositories are accessible without authentication to any visitor of deptools.io. Private repositories are never exposed publicly.

API keys and uploaded manifests

Projects that are not hosted on GitHub can be analyzed by sending their dependency manifest files to our public API, authenticated with an API key created from your organization or project settings. For this feature we store:

  • API keys, as a one-way hash together with their label, scope and last-used date. The plain key is shown once at creation and is never stored
  • The dependency manifest files you upload, processed and stored exactly like manifests read from GitHub

API keys can be revoked at any time from your settings, which stops every request made with them immediately.

Demo analyses

We run one-off analyses of public open source repositories, without an account, to demonstrate the service. They only involve public repository data, hold no personal data, and are deleted automatically 16 days after they are produced.

Billing and subscription data

Payment processing and invoicing are handled entirely by Lemon Squeezy, which acts as the merchant of record. We do not store your credit card information and we do not manage invoices. We only store the minimum subscription metadata needed to determine your plan access:

  • Lemon Squeezy customer ID and subscription ID
  • Subscription plan, status, and renewal dates
  • Trial usage flag

For invoices, payment history, and billing records, please refer directly to your Lemon Squeezy customer portal.

Technical data

Our server and application may generate standard technical logs including:

  • Application-level logs (errors, warnings) for debugging purposes
  • GitHub and Lemon Squeezy webhook event logs
  • Your IP address, recorded in standard server access logs and used as a counter key to enforce rate limits on authentication and API endpoints, which protects your account against brute-force attempts. It is never linked to your account for analytics or profiling, and it follows the log retention period stated below

Product analytics data

We use PostHog (EU region) to collect product analytics data to understand how the service is used and improve it. This includes:

  • Page views and navigation patterns
  • Feature usage events (e.g. project created, analysis launched, dashboard viewed)
  • A numeric user identifier (user.id) used as the PostHog distinct_id for authenticated users

Our public documentation at deptools.io/docs uses the same PostHog project with the same configuration. Its events are tagged site: 'docs' and cover page views and exits, clicks on links back to the application and on external links, use of the copy button on code blocks, documentation searches, and requests for a page that does not exist. Only the search event records free-form text: the term you type is stored in lowercase.

Both sites are served from the same origin, so they share the same localStorage and therefore the same PostHog distinct_id. Once you are signed in to the application, the documentation pages you read are attached to the same profile as your activity in the app.

On both sites, PostHog is configured in cookieless mode (persistence: 'localStorage'), with IP address collection disabled and autocapture disabled. Data is stored on PostHog EU infrastructure (eu.i.posthog.com). Your email address is never included in analytics event properties.

2. Local Storage

We do not use tracking cookies. We store the following data in your browser's localStorage to keep you authenticated and to remember your preferences:

KeyPurposeDuration
access_tokenAuthenticates your API requests (JWT)Session
refresh_tokenRenews your session without re-login (opaque token, revocable server-side)31 days
userCaches basic profile info (email, ID)Session
organizationsCaches the list of organizations you belong toSession
selected_org_slugRemembers your last selected organizationPersistent
nuxt-color-modeStores your light/dark theme preferencePersistent
ph_*PostHog analytics — stores a random anonymous ID and session state. No cookies are set; this is localStorage onlyPersistent

Two short-lived httpOnly cookies are set, neither of which is used for tracking. github_link_user_id is set during the GitHub account linking flow only, and google_nonce on the sign-in pages, to make sure a Google sign-in cannot be replayed. Both expire after 10 minutes.

3. Legal Basis for Processing

Under GDPR (Article 6), we process your data under the following legal bases:

Contract performance (Art. 6.1.b)

Account information, GitHub and Google sign-in data, repository data, uploaded manifests, API keys, subscription metadata, scan logs, and the transactional emails we send you (verification codes, password resets, invitations). Necessary to provide the dependency analysis service you signed up for.

Legitimate interest (Art. 6.1.f)

  • Technical logs and error monitoring (Sentry), to ensure service security and stability and to investigate incidents.
  • Product analytics (PostHog), to understand how the service is used and improve it. Configured to minimize the data collected: no cookies, no IP address, no autocapture, no email address.
  • Internal notifications (Discord), so that our team is informed of new sign-ups, organizations, projects and subscriptions and can follow the activity of the service.

You can object to any processing based on legitimate interest, see section 6.

4. Third-Party Services

We share data with the following third parties only to the extent necessary to provide our service:

GitHub (GitHub, Inc.)

OAuth & App

Used for user authentication and repository access. Data shared includes your GitHub user ID and OAuth tokens. GitHub's privacy policy applies to data processed on their platform.

GitHub Privacy Policy →

Google (Google LLC)

Sign-In

Used for user authentication only, and only if you choose to sign in with Google. Google tells us who you are; we share no data of yours with Google. The sign-in button and prompt are loaded from Google, which means Google sees that you visited a Deptools sign-in page. Google's privacy policy applies to data processed on their platform.

Google Privacy Policy →

Lemon Squeezy (Lemon Squeezy, LLC)

Payment

Used to process subscription payments. Your email address and subscription details are shared with Lemon Squeezy. We never receive or store your payment card data.

Lemon Squeezy Privacy Policy →

OVH SAS

Hosting

Our servers and all stored data are hosted exclusively on OVH infrastructure located in Gravelines (GRA), France. GitHub Inc., Google LLC, Lemon Squeezy LLC, Resend Inc., Functional Software Inc. (Sentry) and Discord Inc. are US-based companies; data shared with these providers is governed by their respective Data Processing Agreements and Standard Contractual Clauses (SCCs) adopted by the European Commission.

Resend (Resend, Inc.)

Email

Used to deliver our transactional emails: sign-up verification codes, password reset links, and organization or project invitations. Your email address and the content of these emails are processed by Resend for delivery. We send no marketing emails.

Resend Privacy Policy →

Sentry (Functional Software, Inc.)

Error monitoring

Used to collect errors, both in your browser and on our server, so we can fix them. An error report contains the stack trace, the page or request that triggered it (URL, method, headers) and your browser and operating system versions. We never attach your account identity to error reports and performance tracing is disabled. Browser reports are sent directly from your browser to Sentry, which therefore sees your IP address in transit like any server you connect to, but it is not stored in the report. Reports are deleted by Sentry after 90 days.

Sentry Privacy Policy →

Discord (Discord Inc.)

Internal notifications

Used to notify our team, in a private channel, of events on the service: a new account, organization, project or subscription, and repository visibility changes. A new-account notification contains your email address, display name and sign-in method. These notifications are visible to the Deptools team only.

Discord Privacy Policy →

PostHog (PostHog, Inc.)

Analytics

Used for product analytics (pageviews, feature usage events) on deptools.io and on the public documentation at deptools.io/docs. PostHog is configured in cookieless mode — no cookies are set, PostHog's IP collection is disabled, and autocapture is disabled. Data is processed exclusively on PostHog's EU infrastructure (eu.i.posthog.com), located in the European Economic Area. Your email address is never included in event properties.

PostHog Privacy Policy →

We do not use advertising networks, advertising cookies, or social media tracking pixels. The only analytics service we use is PostHog, configured in cookieless mode as described above. We never sell your data and never share it with any third party not listed on this page.

5. Data Retention

Data typeRetention period
Account data (name, email, password)Deleted immediately upon account deletion
GitHub OAuth tokensDeleted immediately upon account deletion. Revoking access via GitHub's settings does not automatically delete your data from Deptools. You must delete your account to remove all stored data.
Repository metadata and analysis resultsDeleted immediately upon account or project deletion
Repository data after GitHub App uninstallationUninstalling the GitHub App stops all further access to your repositories, but does not by itself delete the data already analyzed. Projects and their analysis results remain in your Deptools organization until you delete the projects, the organization, or your account.
Private repository data after a plan downgradeDeleted immediately when the organization moves to a plan that does not include private repositories
Uploaded manifests and API keysManifests follow the project they belong to. API keys are deleted when revoked, or with the organization or project they are attached to
Subscription metadata (plan, status, IDs)Deleted immediately upon account deletion
Session and one-time tokensRefresh tokens expire after 31 days, sign-up codes after 15 minutes and password reset links after 30 minutes. Expired tokens are purged daily and all sessions are revoked on account deletion
Demo analysesDeleted automatically 16 days after they are produced
Error reports (Sentry)Deleted by Sentry after 90 days
Server and application logsKept on our server for as long as needed to investigate incidents, and no longer than the life of the server they are written on. They are never used for profiling and are not linked to your account
Scan logsKept for the life of your account, they enforce the scan frequency limits of your plan. Deleted with your account or organization

6. Your Rights Under GDPR

As a data subject under GDPR, you have the following rights:

Right of access

Request a copy of all personal data we hold about you.

Right to rectification

Request correction of inaccurate or incomplete data.

Right to erasure

Request deletion of your personal data ("right to be forgotten").

Right to data portability

Receive your data in a structured, machine-readable format.

Right to restriction

Request that we limit how we process your data in certain circumstances.

Right to object

Object to processing based on legitimate interest.

To exercise any of these rights, contact us at privacy@deptools.io. We will respond within 30 days. If you are not satisfied with our response, you have the right to lodge a complaint with the CNIL.

7. Data Security

We implement appropriate technical and organizational measures to protect your data:

  • Passwords are hashed using scrypt. They are never stored in plain text
  • Authentication uses short-lived JWT tokens with secure refresh token rotation
  • All data is stored on servers physically located in France (OVH Gravelines)
  • The only data leaving the European Economic Area is what the US-based providers listed in section 4 need to perform their service, under Standard Contractual Clauses. We store nothing outside the EEA
  • API keys are stored as one-way hashes, and the plain key is shown only once at creation
  • Access to production systems is strictly limited to authorized personnel

Despite these measures, no method of transmission or storage is 100% secure. If you discover a security vulnerability, please report it responsibly to privacy@deptools.io.

Data breach notification

In the event of a personal data breach, we will notify the CNIL within 72 hours as required by GDPR Article 33. If the breach is likely to result in a high risk to your rights and freedoms, you will be informed without undue delay in accordance with GDPR Article 34.

8. Minimum Age

Deptools is intended for professional and developer use only. We do not knowingly collect data from persons under the age of 16. If you believe a minor has created an account, please contact us at privacy@deptools.io and we will delete the account promptly.

9. Changes to This Policy

We may update this Privacy Policy from time to time. When we do, we will update the "Last updated" date at the top of this page. For significant changes, we will notify registered users by email. Continued use of the service after any changes constitutes acceptance of the updated policy.