What access do you need?+
A read-only deploy key (best for scan-only: we send you a public key, you add it to the one repo, no secret changes hands) or, for a repo owned by a GitHub organization, a collaborator invite with the Read role. Write access is only needed if you buy fix PRs. On a personal GitHub repo, a collaborator invite always grants write access, so we don't ask for one for scan-only work. We never need your service-role key unless you choose to share it, and you should rotate it afterwards.
Do you store my code or secrets?+
We'll delete your code on request. Your report, which can quote short code excerpts with detected secrets masked, is kept up to 2 years unless you ask us to delete it sooner. We work on it in a private, temporary working directory. You can remove our access at any time; we ask you to once your report is delivered. We keep your intake details for up to 2 years so we can answer follow-ups and re-scans, plus job status logs that record progress and short error messages, which can include fragments of tool output. Ask and we'll delete them. Details on our Security and Privacy pages.
What does a report look like?+
See our sample report, generated by our real pipeline against a deliberately vulnerable demo app, with before/after fix evidence.
Which option should I start with?+
Start with the free Leak Checker. It reads your live URL for exposed keys, public source maps and missing security headers. The $29 Quick Review turns that into your top 3 issues with a fix for each, within 1 business day, with no repo access. The $99 Scan + Report also analyzes your code with automated tools, so it covers Supabase RLS, server-side auth and dependencies, usually within 48 hours. If you want the fixes as a pull request, see Scan + Fix PR and Launch Lockdown in pricing.
Do you have free guides for Supabase Security Advisor warnings?+
Yes. Our free guides explain common Supabase Security Advisor findings and how to fix them: Security Definer View, Function Search Path Mutable, Leaked Password Protection Disabled and RLS Policy Always True. If inserts or uploads fail with "new row violates row-level security policy", see our guides for table inserts and Storage uploads. There are also guides on Firebase API keys, Clerk API routes, Stripe webhooks and exposed .env files. See all security guides.
Is this a penetration test?+
No. It's a best-effort automated review of your code and configuration, with no human review of each finding. Findings are marked confirmed when an automated check proved them (for dependencies, the vulnerable version is present; reachability isn't shown) and probable otherwise. It's not a penetration test. It doesn't certify compliance (SOC 2, HIPAA, PCI) or guarantee zero vulnerabilities.
Which stacks do you support?+
JS/TS (Next.js, React/Vite, Node) with Supabase, which is what Lovable, Bolt, v0, Replit, Windsurf, Cursor, Claude Code, and Codex produce by default. Ask about others.
How big a codebase?+
Up to about 50K lines (excluding lockfiles and generated code). Bigger repos get a quote first.
Will the fixes break my app?+
Fixes are small, one per commit, and we run your build and tests. Nothing merges until you review and approve the PR.