Websites

How much does Supabase cost? 1k, 10k and 100k rows measured

Supabase costs $0 on its Free plan, which includes a 500 MB database, and from $25 a month on Pro, which includes 8 GB of disk per project. For a small business site the rows are rarely what you pay for: 100,000 booking rows measured about 28 MB with their indexes, under 6 percent of the free database.

· Co-founder

4 min read · Published

Supabase costs $0 a month on the Free plan, with a 500 MB database, and from $25 a month on Pro, with 8 GB of disk per project and $0.125 per extra GB, per its pricing page checked on 21 October 2026. Rows are rarely the cost driver: 100,000 booking rows measured about 28.5 MB with three indexes.

The plans, as published on 21 October 2026

Every figure here is from supabase.com/pricing as it read on 21 October 2026.

What 1k, 10k and 100k rows weigh

To see how far 500 MB goes, the row shape came from the booking tables that AI site plans on OneCraft’s development project use: an id, a session id, a user id, a name, an email, a phone, a status, a party size, a note and two timestamps. A read only query on that dev project generated 1,000, 10,000 and 100,000 such rows and summed pg_column_size over them, writing nothing. Each row measured 183 to 184 bytes, header included.

Postgres stores rows in 8 kB pages with a 4 byte pointer per row, so 43 of these rows fit in a page. That gives an estimated 0.20 MB for 1,000 rows, 1.9 MB for 10,000 and 19.1 MB for 100,000. Three uuid indexes (the primary key, the session and the user) add about 50 percent more, so the whole table reaches about 0.34 MB, 2.9 MB and 28.5 MB. Even at 100,000 bookings, that is 5.7 percent of the free plan’s database and 0.36 percent of Pro’s included disk.

The caveats are real. n here is a generated sample, not a live site; the sizes past the measured row bytes are estimates from the page layout, not a measured table; real tables carry free space after updates and deletes, and Postgres plus Supabase’s own schemas use some of a project’s space before any of your tables. Supabase’s database size guide explains how to see the real figure for a project.

So what does a small site pay for

Usually not rows. A class studio taking 50 bookings a day reaches 10,000 rows in about seven months and 100,000 in about five and a half years, still well inside 500 MB. Three things tend to cost first.

  1. Staying awake. A free project pauses after a week of inactivity. A quiet small site can hit that, and a paused database means a broken booking page. That alone moves many live sites to Pro.
  2. Files. 1 GB of storage on Free fills with a few hundred full size photos. See what a storage bucket is.
  3. More projects. Two active free projects per account, and each extra Pro project from $10 a month, which adds up when every site has its own.

Hosted schema or your own Supabase

On OneCraft a site that needs data gets one of two homes. A hosted schema sits in OneCraft’s pool project with a login role that can reach no other site; every OneCraft plan includes one for each site. If the owner connects their own Supabase account, the site uses a project on that account, and Supabase’s plans above apply to it. Either way every table gets row level security, and the migrations are kept in the site’s repository.

So the comparison for one site is roughly: a hosted schema included in any OneCraft plan, or your own Supabase project at $0 with the pause rule, or $25 a month on Supabase Pro, on top of whichever OneCraft plan you are on. This post does not state a size limit for hosted schemas, because none is recorded in the product facts it draws on.

For what these terms mean, read what a Supabase project is, what a Postgres schema is and what a connection pooler is. To use your own account, see connect your own Supabase; for the whole monthly bill of a site, what an AI written website costs to run; and for the trade offs of the two homes, database per site vs a shared database. OneCraft’s own plan prices are on pricing.

One bookings table at 1k, 10k and 100k rows: row bytes measured with pg_column_size over generated rows on the dev project, 21 October 2026; table and index sizes estimated from Postgres's 8 kB page layout (8 kB pages, 4 byte line pointers, three uuid indexes at 90% leaf fill). Quotas from supabase.com/pricing, checked 2026-10-21
RowsMeasured bytes per rowTable on disk (est.)Table + 3 indexes (est.)Share of Free 500 MBShare of Pro 8 GB
1,0001830.20 MB0.34 MB0.07%under 0.01%
10,0001841.9 MB2.9 MB0.6%0.04%
100,00018419.1 MB28.5 MB5.7%0.36%

Questions people ask

Is Supabase free for a small business website?

It can be. The Free plan is $0 with a 500 MB database, 50,000 monthly active users, 5 GB of egress and 1 GB of file storage, according to Supabase's pricing page on 21 October 2026. The catches are that free projects pause after a week without activity and an account can have two active free projects, which matters for a live site.

What do you pay for first as a site grows?

For most small sites, not rows. 100,000 bookings measured about 28 MB with indexes. Photos and files fill storage faster, and a busy site's traffic counts toward egress. Pause rules matter before either: a free project that sleeps after a quiet week is the first reason many owners move to Pro.

What does Supabase Pro include?

From $25 a month: 8 GB of disk per project then $0.125 per GB, 100,000 monthly active users, 250 GB of egress, 100 GB of file storage, daily backups kept 7 days, and $10 a month of compute credits, enough for one Micro instance. Extra projects start from $10 a month each, per the pricing page checked 21 October 2026.

How were the row sizes measured?

A read only query generated 1,000, 10,000 and 100,000 rows shaped like a booking (three ids, a name, an email, a phone, a status, a party size, a note and two timestamps) and summed pg_column_size over them. Nothing was written. Table and index sizes are then estimated from Postgres's page layout, so treat them as close, not exact.

Does a OneCraft hosted database count against my own Supabase quota?

No. A hosted schema lives in OneCraft's pool project, so it has nothing to do with a Supabase account of yours. Every plan includes a hosted site database. An owner can instead connect their own Supabase account, and then that account's plan and quotas apply.

Written by

Indunil Asanka · Co-founder

Builds the generation pipelines behind OneCraft: the slide, flyer and poster layout engines, the document grid and the render workers that turn a written brief into a finished file.

LinkedIn profile

Sources

Written and checked by the OneCraft team. Last checked .

Make your own website

Describe what you need and the generator writes and designs it, then you edit anything you like.

See what it can make

Read next