Data Handling & Security Policy | Ryze AI

Data Handling & Security Policy

How Ryze AI handles advertising data, conversations, and account information across the platform — for security reviewers, compliance officers, and anyone evaluating Ryze.

Version 2.1 Last updated October 8, 2026 Ryze AI Engineering

Live reads, deliberate storage

Campaign metrics, spend, and creatives are read live from Google, Meta and the other platforms you connect through their APIs. Ryze keeps only what it needs to run your account: the campaigns and ads it manages, the notes and summaries the agent writes, and the reports it builds for you.

Never sold or shared

Your advertising data, conversations, and account info are never sold, licensed, or shared with other customers, partners, or data brokers.

Not used to train AI

Ryze does not train or fine-tune models on your conversations, campaign data, or usage. AI requests go to Anthropic, OpenAI, Google (Gemini), and OpenRouter under their API terms.

Encrypted everywhere

TLS 1.2+ in transit (TLS 1.3 where supported), encryption at rest for stored data, and OAuth tokens encrypted with AES-256-GCM before they are written to the database — never in plaintext.

Least-privilege OAuth

We request only the minimum scopes needed for read access and campaign management via each platform's official OAuth 2.0 flow, or use the API key you provide where a platform has no OAuth.

Revoke access anytime

Disconnect an integration in Ryze and its stored tokens are deleted. You can also revoke Ryze from your Google or Meta account security settings at any time.

What we handle, and how

Every category of data Ryze touches, where it lives, and how long it's kept.

Data type Examples Storage Retention
Advertising data Campaign metrics, ad spend, impressions, clicks, conversions, creatives Read live via authenticated API calls. Ryze stores the campaigns, ad sets and ads it manages (ids, names, budgets, statuses), the agent's notes, and the performance snapshots your reports are built from While the workspace exists; removed with the workspace
Website events (Ryze Pixel) Page views, add to cart, purchases on your store, once you install the Ryze Pixel ClickHouse Cloud (AWS us-east-1), forwarded to the ad platforms you configure While the pixel is installed
Conversation data User messages, AI responses, generated insights, the tool results behind them Encrypted database (Supabase Postgres, AWS us-east-1) Until you delete the chat or the account
Content and files Articles, ad creatives, uploads to the Media library Supabase Postgres and storage (AWS us-east-1) Until you delete them or the account
Account metadata Email, subscription plan, billing status Encrypted database; card details stay with Stripe Duration of account
Ad account credentials OAuth tokens, refresh tokens, account connection details Encrypted with AES-256-GCM at the application level, then stored in the database — never in plaintext Until you disconnect the integration or revoke access

Advertising data is read live, not copied

The agent calls the connected platforms on every run. What Ryze keeps is deliberate: the objects it manages, its own notes, and the snapshots your reports are built from. When you use Ryze through the MCP server in Claude, ChatGPT or Grok, tool results go back to that assistant and are not stored by Ryze.

  1. User submits a query in the Ryze AI chat interface — e.g. “Show me last week's campaign performance.”
  2. Ryze identifies the required data scope and initiates an authenticated call to the connected platform's API — e.g. Google Ads API or Meta Marketing API.
  3. The ad platform validates OAuth 2.0 credentials and returns data over a TLS-encrypted connection.
  4. The agent reads the data and answers. What persists is its summary, the notes it writes on the objects it manages, and the tool results kept with the conversation so you can reopen it.
  5. The response is returned to the user. Nothing is copied into separate analytics stores or shared outside your workspace.

Key properties

What's stored, and what isn't

Stored in conversations

Encrypted at rest, TLS 1.2+ in transit. Access restricted to authenticated services with role-based controls.

Never stored in conversations

Delete a chat and it is removed from the database.

Hosted in the United States, isolated by tenant

Ryze runs on Vercel and Supabase (AWS us-east-1) with Cloudflare at the edge, and row-level security so one customer's data is never visible to another.

Compute

Vercel — the application runs as serverless functions in the United States; long-running agent work is queued through Upstash.

Database

Supabase (Postgres) on AWS us-east-1 for conversations, account data, campaign objects and files, encrypted at rest. ClickHouse Cloud on AWS us-east-1 for Ryze Pixel events.

Secrets

OAuth tokens are encrypted with AES-256-GCM using a key that lives only in the server environment, then stored in the database. The key never reaches the browser or logs.

Tenant isolation

Every row carries its organization and workspace; Postgres row-level security enforces the boundary on every query

Serverless functions hold no shared state between requests

One workspace's OAuth tokens can never be used to access another workspace's accounts

Production access is limited to named engineers with individual accounts; service keys follow least privilege

Your rights over your data

For the data in your connected accounts and your website events, Ryze is a processor acting on your instructions. For your Ryze account itself (email, billing), Ryze is the controller. All GDPR data subject rights are supported.

Right to Access

Request a full export of stored data at any time.

Right to Erasure

Request deletion of your data — conversations, content, OAuth tokens.

Right to Rectification

Update or correct account information within the platform.

Right to Data Portability

Request conversation data in a machine-readable format.

Right to Restrict Processing

Disconnect an integration to stop all processing of that account's data.

Right to Object

Object to the processing of your personal data.

Data residency

Ryze is hosted in the United States: Supabase and ClickHouse Cloud on AWS us-east-1, Vercel in the US, Cloudflare at the edge. EU-only hosting is not available on standard plans. Transfers from the EU and Switzerland are covered by the EU Standard Contractual Clauses (Module Two) in our DPA. Ryze is not certified under the EU-US Data Privacy Framework and has not appointed an EU representative under GDPR Art. 27.

DPA & sub-processors

Our DPA, which incorporates the EU Standard Contractual Clauses, is available to any customer on request. Sub-processors include: Supabase, Vercel, ClickHouse Cloud, Upstash, Cloudflare, Anthropic, OpenAI, OpenRouter, Google, Stripe, Resend, Sentry, PostHog, Apify, Browserbase, DataForSEO, and Context7.

Data handling summary

Component Stored on Ryze servers? Where it lives Encryption
Ad account data Yes Managed campaign objects, agent notes and report snapshots on Supabase (AWS us-east-1); raw metrics read live from Google / Meta At rest + in transit (TLS 1.2+)
Website events (Ryze Pixel) Yes ClickHouse Cloud (AWS us-east-1) At rest + in transit
Chat conversations Yes Supabase Postgres (AWS us-east-1) At rest + in transit (TLS 1.2+)
Ad account credentials Yes Supabase Postgres, encrypted with AES-256-GCM before storage Application-level + at rest + in transit, never plaintext
User account info Yes Supabase Postgres (AWS us-east-1); card details at Stripe At rest + in transit
Data sold to 3rd parties Never N/A — we do not sell or share data N/A