Spec

Demo

See Spec on a made-up bakery.

Harbor & Pine doesn’t exist. We made up its customers, orders and files so you can see what Spec does, with nothing real at stake.

Made-up data

1. Search it

These are the real results Spec’s search gave for each question, on this made-up data, using the same search model a customer’s copy uses. Typing your own search in the demo comes next.

Pick a question:

Spec found 5 matches for “how long do wholesale customers have to report a crushed loaf”

  1. policies/refunds.md (part 1)

    # Refunds Wholesale customers get a full refund on crushed or late loaves if they report it within 72 hours, with a photo.

  2. reports/2026-Q2.txt (part 1)

    Q2 2026: revenue up 9%, driven by wholesale sourdough to cafes in York and Leeds.

  3. reports/2026-Q3.txt (part 1)

    Q3 2026: revenue up 12%, Harbour Cafe in Whitby became the largest new wholesale account.

  4. logs/2026/09/00054.log (part 1)

    deliveries batch 54 ok

  5. logs/2026/09/00380.log (part 1)

    deliveries batch 380 ok

2. The data Spec copied

The bakery’s database has 5 tables. Here are the first rows of each, as Spec copied them.

customers · 501 rows

idnameemailcitycreatedtagsprefs
501Harbour Cafe Ltdorders@harbourcafe.example.testWhitby2026-09-27 23:32:08.675207+00:00['wholesale']{}
500Customer 500c500@example.testLeeds2024-05-25 20:00:00+00:00['retail']{'allergy': None, 'newsletter': True}
499Customer 499c499@example.testHull2024-05-25 13:00:00+00:00['retail']{'allergy': None, 'newsletter': False}
498Customer 498c498@example.testBath2024-05-25 06:00:00+00:00['wholesale']{'allergy': None, 'newsletter': True}
497Customer 497c497@example.testBristol2024-05-24 23:00:00+00:00['retail']{'allergy': None, 'newsletter': False}

products · 6 rows

idskunamepriceactive
1SOUR-800Sourdough loaf 800g4.20True
2RYE-600Dark rye 600g3.90True
3CROI-6Butter croissants x65.50True
4BAG-4Sesame bagels x43.10True
5CAKE-LEMLemon drizzle cake12.00True

orders · 20,020 rows · “One per customer order; a refund keeps the row with status refunded”

idcustomer_idplacedtotalstatusdeliverynotes
200205012026-09-27 23:52:08.675207+00:0048.00open[2026-09-28 23:32:08.675207+00:00, 2026-09-29 01:32:08.675207+00:00)
200195012026-09-27 23:51:08.675207+00:0048.00open[2026-09-28 23:32:08.675207+00:00, 2026-09-29 01:32:08.675207+00:00)
200185012026-09-27 23:50:08.675207+00:0048.00open[2026-09-28 23:32:08.675207+00:00, 2026-09-29 01:32:08.675207+00:00)
200175012026-09-27 23:49:08.675207+00:0048.00open[2026-09-28 23:32:08.675207+00:00, 2026-09-29 01:32:08.675207+00:00)
200165012026-09-27 23:48:08.675207+00:0048.00open[2026-09-28 23:32:08.675207+00:00, 2026-09-29 01:32:08.675207+00:00)

order_items · 33,333 rows

order_idproduct_idqty
124
153
214
243
333

favourites · 429 rows

customer_idproduct_idadded
162025-06-01 01:00:00+00:00
252025-06-01 02:00:00+00:00
342025-06-01 03:00:00+00:00
432025-06-01 04:00:00+00:00
522025-06-01 05:00:00+00:00

Plus 1,241 files from S3: a refund policy, an allergen note, a flour supply contract (a Word file), quarterly reports, an invoice, an order export and delivery logs.

3. What Specbase made of it

More about Specbase →

4. How much room it took

Here is a real example, measured on made-up data: Harbor & Pine, a made-up bakery.

All of it together is about 145 MB. A 1 TB disk holds that more than 6,800 times over.

Search needs extra room: the search copy is bigger than the raw rows, because it keeps what the search model needs for every record. The full copy is about the size your data is in AWS. Spec doesn’t compress it yet. The same database file zipped up is 483 KB instead of 2.5 MB; that is on our list, and we’ll only say so once Spec does it.

Large companies: we haven’t measured a large account yet, and the search copy grows with the number of records. We size it with you on a sample of your own data before you buy disks.

Want this for your own data?

Spec is in early access. It copies PostgreSQL, S3, Supabase dump files and folders on your own disks today.