Effective Date: April 5, 2026 · Custodia, LLC · Pittsburgh, PA
This Privacy Policy describes how Custodia, LLC("Custodia," "we," "us," or "our"), a Pennsylvania limited liability company headquartered in Pittsburgh, Pennsylvania, collects, uses, stores, and protects information when you use our website at custodia.dev, our command-line interface ("CLI"), and all related services (collectively, the "Service"). By using the Service you agree to the practices described in this policy.
Geographic scope: The Service is currently offered exclusively to users located in the United States. We do not knowingly market to or onboard users outside the United States.
Custodia, LLC is a cybersecurity software company organized under the laws of the Commonwealth of Pennsylvania. We provide automated code security scanning, vulnerability reporting, dependency CVE analysis, auto-fix tooling, and monthly security posture email reports for software development teams. Our registered business address and primary point of contact for privacy matters is:
We collect the following categories of information, no more. Each item is necessary to operate the Service.
Account creation is handled by Clerk, Inc., our third-party authentication provider. When you register, Clerk collects and manages your email address, name, and OAuth credentials (if you sign in with Google or GitHub). Custodia receives only a Clerk-issued user ID, your email address (to send you scan completion and monthly report emails), and your subscription tier. We do not store passwords. We do not have access to your authentication credentials.
Payments for paid plans are processed exclusively by Stripe, Inc. Custodia never receives, sees, or stores your credit card number, CVV, or bank account details. We receive a Stripe Customer ID and payment confirmation webhooks so we can activate or deactivate paid features. For the one-time SOC 2 Scanner purchase ($295), we store a Stripe Session ID and Payment ID for order reconciliation only.
When you run custodia scan, the CLI packages your source files into a text payload and sends it to our API over HTTPS. We process this payload through our security analysis pipeline and return a structured security report. The following data is stored in our database:
Your source code is not permanently stored. Code passed through our scan pipeline is processed in memory and passed to our AI inference provider (Anthropic). It is not written to our database, not logged to disk, and is not retained after the inference call completes. No file contents, function names, or code strings appear in any stored record. This applies equally to the Auto-Fix feature (custodia fix): source files sent for AI-powered remediation are transmitted directly to Anthropic for inference and are not stored by Custodia. You use this feature at your own risk.
We store per-billing-cycle counters for: number of full scans run, number of diff scans run, and number of auto-fix credits used. These counters are used solely for quota enforcement. They are tied to your Clerk user ID, reset on your billing cycle start date, and are accessible to you in the dashboard.
If you create API keys for CLI authentication, we store a masked version of each key (prefix + last 4 characters), a human-readable name, and creation timestamp. The full key is shown to you exactly once at creation and is not stored in recoverable form in our database.
If you use the SOC 2 Scanner product and connect a private GitHub repository, we request a GitHub OAuth token scoped to repo read access. This token is stored encrypted at rest using AES-256-GCM in our database. It is used only to fetch your repository files for the SOC 2 analysis and cannot be used for any other purpose. You may disconnect your GitHub account at any time from the dashboard, which deletes the stored token.
If you register a repository for monthly automated scanning (custodia schedule), we store the repository name (owner/repo format), an optional GitHub personal access token encrypted at rest (AES-256-GCM) for private repos, the schedule state (enabled/disabled), and metadata about the last run (date, score, finding count). No source code from automated scans is retained after inference completes.
After each completed scan, we record a fully anonymized entry in our research dataset.This record contains no source code, no file paths, no repository name, no user identifiers, and no company information. The anonymized record contains only:
This anonymized dataset powers Custodia's annual "State of Code Security" public research report, which publicly discloses aggregate industry cybersecurity trends without identifying any individual, organization, or codebase. The legal basis for this processing is Legitimate Interest(the advancement of public cybersecurity knowledge). This practice is disclosed in these Terms of Service. If you object to your anonymized scan data being included in research analytics, you may contact us at support@custodia.dev to have your records excluded from the research dataset.
Our hosting provider, Vercel, Inc., automatically logs standard web server data including IP addresses, request timestamps, HTTP methods, response codes, and user agent strings for the purposes of security monitoring and infrastructure operations. These logs are subject to Vercel's own data retention and privacy policies. Custodia does not analyze or export these infrastructure logs for marketing or behavioral profiling purposes.
We use the information we collect for these purposes only:
We do not sell your personal information. We do not use your information for behavioral advertising.
We share data with the following providers solely to the extent necessary to operate the Service. Each provider acts as a data processor under contract with Custodia:
We do not share your personal information with advertisers, data brokers, analytics companies, or any third party for marketing purposes.
We apply the following security controls to protect data at rest and in transit:
No security measure is 100% foolproof. If you believe you have discovered a security vulnerability in the Custodia Service, please disclose it responsibly to support@custodia.dev.
As a U.S.-based service, the following rights are available to all users, regardless of state of residence:
To exercise any of these rights, email support@custodia.devwith "Privacy Request" in the subject line. We will respond within 30 days. We may need to verify your identity before processing your request.
If you are a California resident, you have additional rights under the California Consumer Privacy Act (CCPA) as amended by the California Privacy Rights Act (CPRA): the right to know what personal information is collected; the right to delete personal information; the right to opt-out of the "sale" or "sharing" of personal information (Custodia does not sell or share personal information as defined under CCPA); and the right not to be discriminated against for exercising these rights. To submit a CCPA request, contact us at support@custodia.dev.
The Service is intended for use by individuals aged 18 or older who are professional software developers or authorized business representatives. We do not knowingly collect personal information from anyone under the age of 18. If you believe a minor has created an account, contact us immediately at support@custodia.dev and we will promptly delete the account.
Custodia does not use third-party advertising cookies, tracking pixels, or behavioral profiling technologies. Clerk sets session cookies in your browser solely for authentication purposes. Vercel may set performance-monitoring cookies as part of its infrastructure. No cross-site tracking or retargeting is performed.
The Service is operated in the United States and all data is stored and processed in the United States. If you access the Service from outside the United States, your data will be transferred to and processed in the United States. By using the Service, you consent to this transfer. As noted above, the Service is currently offered to U.S. users only.
We may update this Privacy Policy from time to time to reflect changes in our practices, the Service, or applicable law. When we make material changes, we will update the "Effective Date" at the top of this page and, where required, notify you by email. Continued use of the Service after an updated policy becomes effective constitutes your acceptance of the updated policy.
For questions, concerns, or requests related to this Privacy Policy, contact: