Security
How SchemaChat protects your data
Plain answers to the questions a security review asks first — including what we have not done yet. If something here does not match what your team needs, tell us before you buy.
1. Your database stays yours — read-only
SchemaChat only runs SELECT queries. Every generated query is checked before it runs, and anything that writes or alters data (INSERT, UPDATE, DELETE, DROP, ALTER and similar) is blocked. Results are row-capped.
We still recommend connecting with a read-only database user, so the guarantee also holds on the database side, independent of us.
2. What reaches the AI — exactly
To answer a question, the AI receives: your table and column names, a small number of sample values per column, the question itself, and up to the last six exchanges of the conversation. For uploaded CSV files it also receives a short preview of the first rows.
After a query runs, the result rows are sent to the AI so it can write the answer — up to 2,000 rows on the Free and trial plans, 5,000 on Pro and 10,000 on Premium. Your full tables are never sent; queries run against your database, and only their results are shared.
We do not use your data to train models. The AI providers we use are listed on our sub-processors page.
3. Credentials and encryption
Database passwords and connection secrets are encrypted at rest with AES-256-GCM before they are stored, and are decrypted only when a query runs. Connections to our servers use HTTPS with HSTS.
Account passwords are stored as salted hashes, never in plain text. Two-factor authentication (authenticator app) is available on every plan, and workspace admins can require it for all members. API keys are shown once and stored only as a SHA-256 hash.
4. Access control
Workspaces separate customers from each other. Within a workspace, people are admins (who manage sources, billing, people and settings), members (who connect data, build dashboards and ask questions) or viewers (who can look at dashboards and analyses and ask questions, but cannot change anything). On team plans, admins can let colleagues with a verified company email address join automatically, and see an activity log of the last changes to people, data sources and API keys. The activity log records who did what and when — it is not a record of every question asked. Shared chart links are read-only and can be turned off by the person who created them.
Requests are rate-limited, and our servers drop common scanner and attack traffic before it reaches the application.
5. Hosting and backups
SchemaChat runs on a dedicated server operated by Contabo GmbH in the European Union. The application database is backed up before each release.
Errors are monitored with Sentry, which receives technical error details. For troubleshooting and usage accounting we keep the first 100 characters of each question and a short preview of the SQL it produced, alongside timing and status; we do not store your query results in logs. Operational server logs can contain short excerpts of questions when something fails.
6. What we do not have yet
We are an early-stage company and we would rather say this than imply otherwise: SchemaChat does not currently hold a SOC 2 or ISO 27001 certification, does not offer single sign-on (SAML), and does not yet offer long-term or tamper-evident audit logs (the in-app activity log can be downloaded as CSV but is not an immutable record). Choosing the region your data is stored in is not available yet.
If any of these is a requirement for your team, email us — knowing what customers need is how we decide what to build next.
7. Reporting a vulnerability
If you believe you have found a security issue, please email us with details and we will respond promptly. Please give us a reasonable chance to fix it before disclosing it publicly.