/vs-supabase/ · The honest comparison

Different answers to the same question.

Supabase is a mature hosted platform with Postgres from day one. Harness is a compiled backend that runs in your own account, and most of the managed layer is still on the roadmap. Both columns below are meant to survive a Supabase engineer reading them.

Shippingin the repo Designedpublic issues, unbuilt Plannednamed, unspecified

Supabase, per its own documentation, compared with Cratefield Harness.
Capability Supabase (per its docs) Cratefield Harness
Database Managed Postgres per project, with extensions such as pgvector. docs Cloudflare D1 (SQLite) per backend; 10 GB per database, single-threaded. Postgres adapter Designed
Multi-tenant isolation Row Level Security policies on shared tables, keyed by JWT claims. docs One database per tenant; no shared tables, no RLS. Shipping
Where it runs Supabase-hosted projects, or self-hosted from the open-source stack. docs Managed by us, in your infrastructure account or ours — two modes Planned
Composition Dashboard settings, SQL, Edge Functions in TypeScript. docs Rust crates listed in Cargo.toml, compiled into one binary Shipping
Auth Hosted auth with email, phone, social and SSO providers. docs Auth service specified in 22 issues; passkeys, OAuth 2.1 + PKCE, ES256 JWTs Designed
Realtime Postgres changes, broadcast and presence over websockets. docs None Planned
Object storage S3-compatible storage with policies and image transforms. docs None Planned
Dashboard Table editor, SQL editor, logs, auth and storage management. docs No data browser. Build logs and deploy history in the control plane Planned
Custom domains A paid add-on: $10 per domain per month, per project. docs Cloudflare for SaaS: 100 custom hostnames included, then $0.10 per hostname per month, to a limit of 50,000 Planned
Egress Pro includes 250 GB, then $0.09 per GB. docs Workers and R2 make no charge for data transfer out Shipping
Idle projects Free projects are paused after 1 week of inactivity, restorable for 90 days, then backups only. Paid projects are not paused. docs No administrative pause and nothing to restore. Compute scales to zero, so idle costs only storage. The Durable Object behind a D1 database hibernates between requests, which is a cold start, not an outage Shipping
License Apache 2.0 for the core stack; components vary. docs MIT across all crates Shipping
Usable today Yes. Create a project and query it this afternoon. docs Open-source core, yes. Managed layer, no Shipping

The limits, in full

What Cloudflare D1 is, and is not.

From developers.cloudflare.com, checked 2026-09-06. Re-check before relying on them.

Cloudflare D1 platform limits.
Databases per account (Workers Paid)50,000
Storage per database10 GB, cannot be raised
Storage per account1 TB
Queries per Worker invocation1,000
Maximum row size2 MB
Query timeout30 s
Concurrency modelsingle-threaded per database
Throughput at 1 ms / query~1,000 queries/s
Throughput at 100 ms / query~10 queries/s

developers.cloudflare.com/d1/platform/limits

Cost is a separate question from capability, and it has its own page: published list prices for Supabase, Railway and Firebase, and the shape of the cost underneath a Cratefield backend.

Fairness

When Supabase is the right answer.

  • You need Postgres extensions, pgvector, or LISTEN/NOTIFY today.
  • You need realtime subscriptions or object storage as part of the backend.
  • A single database will exceed 10 GB.
  • You want a dashboard data browser and a large community answering questions this afternoon.
  • You need something operated for you now. The Cratefield control plane is Planned, not running.

If the account boundary and compile-time composition matter more than the list above, request early access.