US data residency statement

Generated 23 October 2026 from our subprocessor register.

This statement is also published on our security page: https://barrierops.com/security#residency.

The statement below was last reviewed on 17 September 2026.

The two stores that will hold customer data are both in the United States. The database is Vultr Managed PostgreSQL 18 in New Jersey, a region we last verified on 16 September 2026. Object storage is a Cloudflare R2 bucket created in the US jurisdiction, which we last verified on 1 October 2026.

The R2 jurisdiction is fixed when the bucket is created and cannot be changed afterwards, and it is not a location hint. Our own code refuses to start against a bucket outside it, which makes this the one residency control you can verify by reading our source rather than by believing us.

Compute is in the same place: the API and the scan worker run on Vultr instances in New Jersey, a region we last verified on 16 September 2026. Static hosting runs on Cloudflare’s global edge and holds nothing at rest, which we last verified on 21 October 2026.

The providers that are not yet in use are listed below with their state. Each one’s region is established before the account is created, because for several of them it is fixed at creation and cannot be moved afterwards — which is why it is decided first rather than audited later.

Where each provider in our subprocessor register holds data, the date its region was last verified, and its state today. 11 rows.
ProviderWhat it holdsRegionFixed when it was createdRegion verifiedState today
VultrData in transit and in memory, transient page content, and the services’ own logs on diskNew Jersey, United StatesRegion, per instance16 Sep 2026Instances exist, stopped
Vultr Managed PostgreSQLAll customer data except binary artifacts, including the evidence ledgerNew Jersey, United StatesRegion, at cluster creation16 Sep 2026Running
Cloudflare R2 — evidenceScreenshots, DOM captures, engine output, documents, reports, exportsJurisdiction usJurisdiction, at bucket creation. Irreversible1 Oct 2026Bucket barrierops-evidence created
Cloudflare R2 — backupsAn encrypted logical copy of the databaseJurisdiction usJurisdiction, at bucket creation. Irreversible3 Oct 2026Bucket barrierops-backups created; empty until the first nightly backup runs
Cloudflare Workers, DNSNothing at restGlobal edge; nothing at restNothing21 Oct 2026In use
WorkOSUsers, memberships and sealed sessions: names, work email addresses, sign-in eventsNot yet establishedThe environment’s data region, at environment creationNot verifiedTest environment only
SentryError messages, stack traces, scan and organisation idsUnited StatesThe organisation’s data region. Sentry does not move an organisation1 Oct 2026Organisation and projects created; nothing sent until deployed
AxiomService log lines and spans: URLs, ids, timingsUnited States (US East)The organisation’s edge deployment1 Oct 2026Datasets created; nothing is sent until the services are deployed
Better StackProbe URLs, response bodies of /healthz and the status page text. No customer dataNot yet establishedAccount regionNot verifiedOne uptime monitor, paused until the API is live
ResendRecipient addresses and message bodies, kept by Resend for 30 days; once the public barrier-report form is live, the names and addresses of members of the public who report a barrierUnited States; sending region US East (Virginia)The sending region, per domain, when the domain is added. Stored data is held in the United States for every account20 Oct 2026In use: the worker sends the product’s transactional email from send.barrierops.com
GitHubSource code, CI logs and container images. No customer dataNot applicableNot applicable2 Oct 2026Explicitly out of scope, on the record