Security & privacy

An overview of the controls built into LeadPilot. We don't claim certifications we don't hold — this page describes how the product works.

Tenant isolation in the database

Every customer record belongs to a workspace, and PostgreSQL row-level security policies restrict every query to workspaces where the user is an explicit member. Column-level privileges prevent users from changing billing, ownership or system fields.

Authentication

Accounts use Supabase Auth with email verification, secure HTTP-only session cookies and password reset via signed, expiring links. Passwords are never stored or logged by LeadPilot.

Server-side authorization & entitlements

Roles (owner, admin, member) and plan limits are enforced on the server and in the database — hiding a button is never the only control.

Secrets & API keys

Provider credentials live in server-side environment variables only. API keys are shown once and stored as SHA-256 hashes; they're scoped, rate limited and revocable.

Verified webhooks

Stripe and email-provider webhooks are signature-verified and processed idempotently. Subscription status changes only through verified events or authenticated server calls to Stripe.

AI safeguards

AI runs server-side only after authorization checks. Lead content is passed as clearly delimited untrusted data so instructions hidden in a form submission can't steer the assistant. Outputs are suggestions; AI-written emails always require human approval.

Audit logging

Sensitive actions — exports, deletions, role changes, API key creation, email authorization and billing changes — are recorded in an append-only audit log. Logs avoid unnecessary personal data.

Data export, deletion & retention

Admins can export workspace data as JSON; users can export their personal data and delete their account. Deleted records are retained for 30 days, then purged. Form submitter IP hashes are cleared after 90 days.

Infrastructure & your responsibilities

LeadPilot runs on Vercel (application) and Supabase (PostgreSQL, authentication), with Stripe for payments, Resend for email and Groq for AI. Each processes data under its own security program. Customers are responsible for having a lawful basis to contact their leads and for honoring their own privacy commitments.

Found a vulnerability? Please report it via our contact form (topic: Security).