Connect any source.
Query with SQL.
Ship in minutes.

Connect any data source, query with SQL, search with embeddings - or ask your AI coding agent in plain English. Ship a chart, a search page, or an API endpoint in minutes.

$curl -fsSL rawquery.dev/install.sh | sh
EU-hosted · GDPR-readyBuilt on DuckDB + Iceberg + S3

Connect a data source

Build and publish charts

Embeddings and search

query.sql
SELECT customers.name, SUM(orders.total) as revenue
FROM my_stripe.customers
JOIN shop.orders ON customers.email = orders.email
GROUP BY customers.name
ORDER BY revenue DESC

Query across Stripe and Shopify in one SQL statement. No ETL required.

Connect any API.
No code. No waiting.

Describe the API in a JSON spec. Run one command. rawquery handles auth, pagination, rate limits, and schema evolution.

umami-spec.json
{
  "version": "1",
  "base_url": "https://api.umami.is/v1",
  "auth": { "type": "bearer" },
  "streams": [
    {
      "name": "websites",
      "endpoint": "/websites",
      "data_path": "data",
      "primary_key": ["id"]
    }
  ]
}
terminal
$ rq connect umami --spec umami-spec.json \
    --auth-token $UMAMI_TOKEN --schedule daily

 Connection created
 Connection tested
 First sync started
 Schedule set: daily

$ rq query "SELECT * FROM umami.websites"

──────────────────────
 id         domain             
──────────────────────
 a1b2c3     rawquery.dev       
──────────────────────

1 row · 38ms

Any auth method · REST + GraphQL · auto-pagination · schema evolution

Write SQL, get a curl-able endpoint.

Save a parameterized query. Call it with curl. Get JSON objects back. No backend needed.

top-customers.sql
SELECT name, revenue
FROM my_stripe.customers
WHERE region = :region AND revenue > :min_revenue
ORDER BY revenue DESC
terminal
$ curl -H "X-API-Key: rq_..." \
  "https://api.rawquery.dev/api/v1/
   workspaces/acme/saved-queries/
   top-customers/run
   ?region=EU&min_revenue=1000&format=objects"
response.json
{
  "data": [
    { "name": "Acme Corp", "revenue": 12580.50 },
    { "name": "TechStart", "revenue": 8340.00 }
  ],
  "row_count": 2,
  "execution_time_ms": 42.1
}

Parameterized SQL in, JSON out. API key auth, rate limits, cost estimation built in.

AI that knows your data.

One command. Claude Code sees your tables, schemas, and connections. Ask questions in plain language, get SQL and results.

terminal
$ rq claude-init
 Claude Code skill installed

$ claude
> show me customers from Stripe with revenue above 10k
claude generates
SELECT name, email, revenue
FROM my_stripe.customers
WHERE revenue > 10000
ORDER BY revenue DESC
result
──────────────────────────────
 name              revenue                
──────────────────────────────
 Acme Corp         42,580.00              
 TechStart GmbH    28,100.00              
 DataFlow SAS      15,200.00              
──────────────────────────────

3 rows · 42ms

Works with Claude Code, Cursor, Windsurf. CLI or MCP — your choice.

From query to shareable chart. One command.

Create charts from saved queries. Publish pages with a link. Need more? Connect Metabase via wire protocol.

terminal
$ rq charts create mrr --query monthly-revenue \
    --type line --x month --y revenue

 Chart created: mrr

$ rq charts publish mrr

 Published: https://rawquery.dev/c/abc123

$ rq pages create weekly-kpis --columns 3 \
    --charts mrr:3,churn,signups,arpu,ltv,cac

 Page created: weekly-kpis

$ rq pages publish weekly-kpis

 Published: https://rawquery.dev/p/xyz789

Shareable links, password protection, auto-refresh. No BI tool required.

Everything you need. Nothing you don't.

One product. Ingestion, warehouse, transforms, vector search, charts. End to end.

Any Data Source

8 built-in (Postgres, MySQL, Stripe, HubSpot, Salesforce, Shopify, Google Sheets, HTTP/GraphQL) plus any custom API via JSON spec. Push CSV/JSON from CLI.

rq connect + rq push

SQL Query Editor

Monaco editor with schema browser, autocomplete, query history, and CSV/JSON export.

DuckDB-powered

Iceberg Lakehouse

Your data synced to Apache Iceberg on S3. Open format, time travel, no lock-in.

Open table format

Transforms

SQL-based transforms with DAG visualization, scheduling, and run history. dbt-style, built in.

table | view | incremental

Vector Search

Embed any text column, search with natural language. Publish a search page with one command. Built-in embeddings, no external vector DB.

rq embed + rq search

Charts & Pages

Create charts from saved queries. Assemble pages on a CSS Grid. Publish with a link. Password protection, auto-refresh.

rq charts + rq pages

CLI + Claude Code

Query, sync, push data, connect APIs, manage transforms. One command to set up Claude Code integration.

rq claude-init

Wire Protocol

Connect any Postgres client. psql, DBeaver, Metabase - they all work.

Postgres protocol on :5433

EU Data Residency

Data stays in the EU. GDPR-ready. No transatlantic transfers.

Gravelines, FR

Replace your
data stack.

You don't need Fivetran, Snowflake, and Metabase. Charts built in. Need more? Connect any BI tool via Postgres wire protocol.

  • Any data source, any API, any file
  • No more per-seat pricing
  • No more data leaving the EU
  • No more vendor lock-in
FivetranIngestion
SnowflakeWarehouse
MetabaseDashboards
rawqueryAll-in-one

Security by design.

Your data is sensitive. We treat it that way from the ground up.

Strong Password Hashing

Industry-leading password hashing. Resistant to brute force and GPU attacks.

Encryption at Rest (AES-256)

Iceberg data files and connector credentials are encrypted at rest with AES-256. Never logged, never exposed via API.

Workspace Isolation

Every query, every sync, every API call is scoped to your workspace. Cross-tenant access is prevented at every layer.

EU-Hosted Infrastructure

All data stays in the EU (Gravelines, France). No transatlantic transfers. GDPR-ready by default.

Open Formats, No Lock-in

Data stored as Apache Iceberg tables on S3. Parquet files you can read with any tool. Leave anytime with your data intact.

Rate Limiting & Abuse Protection

Per-workspace query limits, IP-level flood protection, and brute-force detection. Built into every layer.

Found a vulnerability? Email hello@rawquery.dev.

Simple pricing.

Pay for what you use. No surprises.

Free

For individuals and small projects

0€/month
  • 500 queries/month
  • 2 GB storage
  • 3 data sources
  • 50 embeddings/month
Get started

Team

50k queries included

29€/month
  • 50,000 queries included
  • 10 GB storage
  • Unlimited data sources
  • 5,000 embeddings/month
  • 0.0008€/query overage
Get started

Business

500k queries included

99€/month
  • 500,000 queries included
  • 100 GB storage
  • Unlimited data sources
  • 50,000 embeddings/month
  • 0.0005€/query overage
  • Priority support
Get started

Need something specific? Let's talk.

hello@rawquery.dev

Free tier included. Upgrade anytime from your dashboard.

Get started in 30 seconds.

No credit card required. Free tier available.

Get startedor install the CLI
$curl -fsSL rawquery.dev/install.sh | sh