Data Processing Agreement
Draft — pending legal review. Not yet in force.
Last updated: 29 October 2026
On this page
1. Scope and parties
This Data Processing Agreement ("DPA") is between the Gauntlet Cloud customer ("Customer", controller) and [not configured: legal name] ("Gauntlet", processor). It meets Art. 28 GDPR and Art. 9 of the Swiss Federal Act on Data Protection (revFADP). It is incorporated by reference into the Terms of Service for every Gauntlet Cloud customer and needs no separate signature. Where the Customer is itself a processor, Gauntlet is its sub-processor and this DPA applies accordingly.
It covers personal data in Customer Content (as defined in the Terms) that Gauntlet processes for the Customer. Account, billing and security data that Gauntlet processes as controller is covered by the privacy policy. Self-hosted Gauntlet runs on the Customer's own infrastructure; Gauntlet receives no Customer Content from it and this DPA does not apply.
2. Details of the processing
Subject matter, duration, nature and purpose, data categories and data subjects are set out in Annex 1. The Customer decides what it deploys and tests and should use test or synthetic data. It must not put special categories of personal data (Art. 9 GDPR) or data requiring particular protection under the revFADP into test environments unless necessary and lawful.
3. Instructions
Gauntlet processes Customer personal data only on the Customer's documented instructions: the Terms, this DPA, and the Customer's use and configuration of the service (blueprints, test templates, runs, deletions). Gauntlet informs the Customer if it considers an instruction unlawful, and may refuse it. If the law requires other processing, Gauntlet informs the Customer first unless the law forbids it.
4. Processor obligations
- People authorized to process Customer personal data are bound to confidentiality.
- Gauntlet implements and maintains the technical and organizational measures in Annex 2 (Art. 32 GDPR, Art. 8 revFADP). It may improve them but will not materially lower the overall level of protection.
- Gauntlet does not use Customer personal data for its own purposes, does not sell it and does not use it to train AI models.
5. Sub-processors
- The Customer gives general authorization for the sub-processors on the sub-processor list.
- Gauntlet announces new or replaced sub-processors on that page and by email to organization owners at least 30 days before they start processing Customer personal data.
- The Customer may object on reasonable data protection grounds within that period. The parties then seek a solution in good faith; failing one, the Customer may terminate the affected service and receives a pro-rata refund of prepaid fees.
- Gauntlet imposes data protection obligations on each sub-processor equivalent to this DPA and remains responsible for their performance.
- The Customer's model provider (e.g. Anthropic) is not a sub-processor: the Customer contracts with it directly and authorizes Gauntlet to forward the agent's requests to it with the Customer's key. These requests contain page text, screenshots and logs from the Customer's environments.
6. Assistance
Taking into account the nature of the processing, Gauntlet assists the Customer with data subject requests (mainly through the console's self-service deletion and download), with security, breach notification, data protection impact assessments and prior consultations (Arts. 32–36 GDPR; Arts. 8 and 22–24 revFADP). Gauntlet forwards data subject requests it receives about Customer Content to the Customer without answering them itself. Assistance beyond the self-service features may be charged at reasonable cost.
7. Personal data breaches
Gauntlet notifies the Customer without undue delay, and at the latest within 48 hours, after becoming aware of a personal data breach affecting Customer personal data (Art. 33(2) GDPR; Art. 24(3) revFADP). The notice describes, as far as known, the nature of the breach, the categories and approximate number of data subjects and records, likely consequences, measures taken or proposed, and a contact. Information may be provided in stages. Notice goes to the organization owners' email addresses.
8. Deletion and return
- During the term the Customer can download run artifacts and delete runs, environments, projects and organizations at any time. Environments are deleted automatically when their time limit expires.
- At the end of the service, the Customer chooses whether Gauntlet returns Customer personal data (an export of runs and their artifacts, requested within 30 days) or deletes it (Art. 28(3)(g) GDPR). Gauntlet deletes it within 30 days of the end of the service, or of delivering the export, unless the law requires storage.
- Backups are weekly snapshots, each deleted after 4 weeks, and are not restored except for disaster recovery.
- On request, Gauntlet confirms deletion in writing.
9. Audits
Gauntlet makes available the information needed to demonstrate compliance with this DPA, primarily by written answers to reasonable questionnaires and this DPA's annexes. If that is insufficient, or a supervisory authority requires it, the Customer may audit, at most once a year, with 30 days' notice, during business hours, at its own cost, by itself or an independent auditor bound to confidentiality, without access to other customers' data. Gauntlet holds no third-party certification (such as SOC 2 or ISO 27001) at present.
10. International transfers
Customer personal data is hosted in the EU (AWS, region eu-north-1, Stockholm, Sweden). Switzerland and the EEA recognize each other as adequate. Gauntlet transfers Customer personal data to a country without adequate protection only with appropriate safeguards: the EU Standard Contractual Clauses (Commission Decision 2021/914, module 2 or 3 as applicable) with the Swiss addendum recognized by the FDPIC, or an adequacy decision such as the EU-US or Swiss-US Data Privacy Framework for certified recipients. Where the SCCs apply between the parties, they are incorporated by reference, with Gauntlet's details as in the imprint and the governing law and courts as in the Terms where the SCCs allow.
11. Liability, term, precedence
Liability under this DPA is subject to the limits in the Terms, as far as the law allows. This DPA applies as long as Gauntlet processes Customer personal data. If it conflicts with the Terms, this DPA prevails on data protection; the SCCs, where they apply, prevail over both.
Annex 1: Processing details
- Subject matter
- Providing Gauntlet Cloud: deploying the Customer's apps into temporary test environments, running AI-driven tests in them and storing the results.
- Duration
- The term of the Customer's use of Gauntlet Cloud plus the deletion period in section 8.
- Nature
- Hosting, running, recording (video, screenshots, logs, traces, network captures), storing, transmitting to the Customer's model provider, displaying and deleting.
- Purpose
- Testing the Customer's software and reporting findings to the Customer.
- Data subjects
- Whoever the Customer's test data concerns: typically test users, and any real users, employees or customers of the Customer whose data the Customer chooses to load.
- Data categories
- Whatever the Customer deploys or the apps display: e.g. names, emails, account data and content in the app; data the agent enters; data visible in recordings, logs, traces and network captures; configuration values in blueprints.
- Special categories
- None intended. The Customer must not load them unless necessary and lawful.
- Location
- AWS, EU (eu-north-1, Sweden). Sub-processors: list.
Annex 2: Security measures
Isolation of test environments
- Each environment runs in its own Kubernetes namespace, with a resource quota and the "baseline" pod security standard enforced. Apps deployed from a Helm chart also run in their own virtual cluster in that namespace.
- A network policy denies inbound traffic except from the Gauntlet platform and the environment itself. Outbound, other private addresses, other environments and the cloud metadata service are blocked; DNS, the platform API, the Kubernetes API and the public internet are reachable.
- The test agent and container-based customer workloads run under the gVisor sandboxed container runtime. Workloads of apps deployed from a Helm chart run on the default container runtime, isolated by their virtual cluster, namespace, network policy and quota.
- Environments are temporary: each has a time limit (the plan's maximum lifetime) and is deleted with its namespace and data when it expires or is destroyed.
- App previews are served from a separate domain (usegauntlet-preview.dev), and the console's session cookie is removed from proxied requests, so a tested app cannot read console sessions.
Credentials
- Model API keys are stored with envelope encryption (AES-256-GCM, a fresh data key per value, bound to its record). The key-encryption key is kept in a Kubernetes Secret, outside the database.
- The model key never enters an environment: the test agent gets a per-run token, and the platform's model proxy adds the key on the way to the provider and allows only the provider's model endpoints.
- API tokens, run tokens and sign-in link secrets are stored only as SHA-256 hashes. Identity-provider refresh tokens are stored encrypted.
- Recognizable credentials in text that a run reports (events, findings, text artifacts) are masked before storage. Video, screenshots, traces and network captures are not masked.
- Card data never reaches Gauntlet (Stripe-hosted checkout).
Access control
- Access is by invitation: only invited email addresses or domains can sign in, through an OpenID Connect provider with a verified email address.
- Role-based access per organization and project (organization owner, admin, member; project owner, editor, viewer); only members can see a project's data.
- Browser sessions are signed (HMAC-SHA-256) HttpOnly, Secure, SameSite=Lax cookies valid for 7 days; signing out revokes the session server-side; administrators can revoke sessions and block accounts; accounts are re-checked with the identity provider periodically (by default hourly).
- Failed API-token authentications are rate-limited per IP address. State-changing website forms check their origin.
- An audit log records security-relevant actions (membership, keys, billing, licenses).
- Administrative access to the hosting is restricted to the operator's staff.
Encryption
- In transit: TLS for the console, API, website and previews (certificates from Let's Encrypt), with HSTS on the console.
- At rest: the server's disk volume is encrypted (AWS EBS encryption), and Kubernetes Secrets are encrypted at rest.
Availability and resilience
- Weekly snapshots of the server's volume, each kept 4 weeks.
- No high-availability commitment: Gauntlet Cloud currently runs on a single server.
Organizational
- Confidentiality obligations for everyone with access; least-privilege access; changes reviewed and tested before release.
- No third-party certification is claimed.