Our numbers, on the public record.
Every figure Cottage CMS quotes anywhere — this site, a podcast, a pitch deck — is defined on this page, recomputed on a schedule, and hash-linked so it cannot be quietly revised later. Commerce figures are released only for qualified completed periods.
Reachable storefronts
2,669
daily snapshot · Sep 14, 2026, 1:05 AM UTCchain 1ea035c65950
- Registered accounts
- 2,677
- Active accounts
- 2,674
- New reachable in 30d
- 435
- Custom domain configured
- 381
01
Different milestones, stated in their own scope.
Every new account receives a default storefront, so account status and storefront totals naturally sit close together. The current account counts and completed-period seller count below are useful milestones, but they are not one signup cohort or a conversion funnel.
- View 01Current snapshot · 2026-09-14
Account created
2,677
Registered accounts
Every shop account that exists on the platform right now.
A signup is an administrative starting point. It does not mean the shop published or sold.
Exact rule
All tenant records regardless of status, including suspended accounts. Accounts deleted by their owner are removed from the database and are therefore excluded entirely.
- View 02Current snapshot · 2026-09-14
Storefront reachable
2,669
Reachable storefronts
Active accounts with a real, publicly reachable storefront.
Every new account receives a default storefront, so this milestone currently sits close to account creation.
Exact rule
Active account with at least one published page, at least one physical product that is active and set to display in the shop, or at least one active digital product. The legacy API field remains liveStorefronts for compatibility.
- View 03Recorded through · Aug 2026
Has made a sale
392
Shops with recorded sales
This many distinct surviving shops have recorded a paid, non-cancelled order.
Owner-deleted records can make early history conservative, and a counted shop may no longer be reachable or actively selling.
Exact rule
An exact distinct-shop count across all currencies through the published completed-month boundary.
Administrative status remains available in the public dataset: 2,674 of 2,677 registered accounts are active. It is not shown as a public milestone because “active” only means the account is not suspended or pending deletion.
Seller-driven activation
Seller-driven storefront milestones
evidence since 2025-07-24
durable capture since 2026-08-02
- Seller-configured
- 1,805
- Seller-reachable
- 1,760
- Configured in 30d
- 325
Historical milestones use the earliest qualifying evidence that still survives; qualifying actions since the durable-capture date are recorded at write time. Deleted or unlogged evidence can make the totals conservative, and current product visibility is never projected backward to infer an earlier reachable date.
Completed signup cohorts
How long the first recorded sale took
Cohorts publish after 10 surviving shops complete the observation window. Rates are rounded to 10 percentage points. The median includes only shops that recorded a first qualifying sale within 90 days; no geography or plan cross-tabs are included.
| Signup month | Eligible shops | First sale in 90d | Median among 90d sellers | Repeat in 180d |
|---|---|---|---|---|
| 2026-05 | 321 | 20% | 8-30 days | pending |
| 2026-04 | 204 | 20% | 8-30 days | pending |
| 2026-03 | 244 | 20% | 8-30 days | pending |
| 2026-02 | 115 | 30% | 8-30 days | 20% |
| 2026-01 | 152 | 10% | 8-30 days | 10% |
| 2025-12 | 73 | 10% | 31-60 days | 10% |
Free plan
2,140
80.2% of reachable−0.1 pp
Paid subscription
452
16.9% of reachable+0.2 pp
Lifetime
77
2.9% of reachable−0.0 pp
Current reachable storefronts split by their Cottage CMS plan. This exact broad partition is separate from the completed-period seller commerce figures below; older snapshots may still show the historical withheld state.Share change is measured against verified snapshot 2026-09-13.
02
From signups to shops making sales.
The account curve begins in the month the first surviving account was created and accumulates from there, so it shows the platform's actual operating history instead of empty pre-launch months. Shops with sales is a monthly activity measure: each closed point counts distinct shops with at least one paid, non-cancelled order across any currency. It is not cumulative, so the curve shows how many sellers were active in each month rather than how many have ever sold.
Reachable storefronts by month
Jul 2025–Sep 2026 · 15 monthly checkpoints · reachable storefronts
Attested change comparisons appear after enough contiguous ledger-backed monthly checkpoints have accumulated.
Swipe chart horizontally to inspect the full history
Show data tableHide data table
| Month | Accounts | Reachable storefronts | Shops with sales | USD order count | Gross USD | Source |
|---|---|---|---|---|---|---|
| 2026-09 | 2,677 | 2,669 | pending | pending | pending | attested |
| 2026-08 | 2,425 | 2,420 | 251 | 2,402 | $73K | attested |
| 2026-07 | 2,056 | 2,051 | 191 | 1,567 | $54K | reconstructed |
| 2026-06 | 1,677 | 1,672 | 155 | 1,055 | $43K | reconstructed |
| 2026-05 | 1,387 | 1,382 | 129 | 927 | $38K | reconstructed |
| 2026-04 | 1,065 | 1,060 | 88 | 570 | $24K | reconstructed |
| 2026-03 | 860 | 855 | 69 | 480 | $22K | reconstructed |
| 2026-02 | 616 | 611 | 42 | 226 | $7K | reconstructed |
| 2026-01 | 501 | 496 | 22 | 107 | $3K | reconstructed |
| 2025-12 | 349 | 344 | 4 | 18 | $700 | reconstructed |
| 2025-11 | 276 | 272 | 0 | 0 | $0 | reconstructed |
| 2025-10 | 226 | 222 | 0 | 0 | $0 | reconstructed |
| 2025-09 | 54 | 52 | 0 | 0 | $0 | reconstructed |
| 2025-08 | 22 | 20 | 0 | 0 | $0 | reconstructed |
| 2025-07 | 1 | 0 | 0 | 0 | $0 | reconstructed |
03
What these shops sold — after the month closes.
Commerce is released by closed UTC month. Every published month and currency must independently represent at least three shops; current-month values remain pending, and withheld intervals are never smuggled into a later total. The chart reports all-currency shops with sales alongside a USD-currency order count and USD gross.
This boundary keeps one- and two-shop currency cells private while allowing a completed USD month with four contributors to publish. Gross remains rounded to the nearest $100.
Released through
2026-08
Shops with a paid order · latest closed month
251
Latest-month sellers · current paid/lifetime plan
199
The first count includes every surviving shop account that recorded at least one paid, non-cancelled order during the month, even if its storefront later became inactive. The second filters those latest-month sellers by the plan on their surviving tenant record when this daily snapshot was captured. Cottage CMS does not reconstruct plan-in-month history. A dash means the count is pending or withheld by a threshold or complementary privacy control.
Qualified completed history
CAD
history
withheld
No completed CAD month in this window independently met the three-shop publication threshold.
USD
history
$263K
- Order count
- 7,352
- Published
- 9 mo
- Withheld
- 0 mo
Latest 3 completed months
CAD
3 months
withheld
No completed CAD month in this window independently met the three-shop publication threshold.
USD
3 months
$169K
- Order count
- 5,024
- Published
- 3 mo
- Withheld
- 0 mo
04
Where the shops are.
Cottage food law is written state by state and province by province, so the regional shape of the platform matters more here than in most markets. Regions are self-reported at signup and never inferred from a visitor’s IP address.
Reachable storefronts by state · self-reported at signupShare change is measured against verified snapshot 2026-09-13. Country shares use all reachable storefronts; state shares use the selected country.
- Texas29711.3% of US · −0.0 pp
- Florida2379.0% of US · no change
- California1736.6% of US · −0.0 pp
- Georgia1154.4% of US · −0.0 pp
- Ohio953.6% of US · −0.0 pp
- Tennessee943.6% of US · +0.0 pp
- Michigan933.5% of US · +0.0 pp
- Illinois923.5% of US · −0.0 pp
- Virginia843.2% of US · +0.1 pp
- Minnesota823.1% of US · −0.0 pp
- Indiana742.8% of US · +0.1 pp
- Missouri722.7% of US · −0.0 pp
- New York672.5% of US · −0.0 pp
- Arizona662.5% of US · −0.0 pp
- Alabama622.4% of US · +0.0 pp
- North Carolina602.3% of US · −0.0 pp
- Colorado572.2% of US · −0.0 pp
- Maryland552.1% of US · −0.0 pp
- South Carolina522.0% of US · −0.0 pp
- Oklahoma491.9% of US · +0.1 pp
- Iowa461.7% of US · +0.0 pp
- Kentucky461.7% of US · −0.0 pp
- Wisconsin451.7% of US · −0.0 pp
- Connecticut431.6% of US · −0.0 pp
- Oregon411.6% of US · −0.0 pp
- Louisiana331.3% of US · +0.0 pp
- Pennsylvania331.3% of US · −0.0 pp
- Kansas321.2% of US · −0.0 pp
- Washington321.2% of US · +0.0 pp
- Arkansas281.1% of US · −0.0 pp
- West Virginia261.0% of US · no change
- Idaho250.9% of US · −0.0 pp
- Massachusetts250.9% of US · +0.0 pp
- New Jersey250.9% of US · +0.0 pp
- Nevada230.9% of US · −0.0 pp
- Mississippi210.8% of US · +0.0 pp
- Nebraska210.8% of US · no change
- North Dakota150.6% of US · no change
- New Hampshire140.5% of US · no change
- Utah140.5% of US · no change
- Rhode Island120.5% of US · −0.0 pp
- South Dakota100.4% of US · no change
- Alaska90.3% of US · no change
- New Mexico80.3% of US · −0.0 pp
- Vermont70.3% of US · no change
- Hawaii60.2% of US · no change
- Maine60.2% of US · no change
- Montana60.2% of US · no change
- Delaware50.2% of US · no change
- District of Columbia30.1% of US · no change
- Wyoming20.1% of US · no change
05
Check the arithmetic yourself.
Self-reported numbers invite scepticism, and they should. The strongest thing we can do is make revision detectable: each daily snapshot is hashed together with the hash before it, so altering a figure breaks every link that follows. This page verifies the latest bounded window; independent archives are what anchor earlier history.
Integrity check
Verify the ledger in your browser
Every published snapshot is hashed and linked to the one before it. Press the button to fetch the bounded public ledger, recompute its digests, validate displayed metadata, and check every loaded predecessor link in your browser.
- Chain head
- 1ea035c65950bd0f
- Latest sequence
- 47
- Latest snapshot
- 2026-09-14
The latest attested checkpoint is shown above. Its bounded payload ledger is loaded only when you choose to verify it.
Reproduce it yourself
payload_hash = SHA-256( canonical_json(payload) ) chain_hash = SHA-256( (prev_chain_hash or "genesis") + ":" + payload_hash ) outer metadata: - snapshot date, methodology version, and capture time equal the hashed payload - sequence numbers are contiguous canonical_json: - object keys sorted lexicographically - no insignificant whitespace - array order preserved - all numbers are integers
Fetch /api/transparency and apply the rules above. A loaded window that verifies proves its payloads and links are internally consistent with the published checkpoint. It does not verify rows before a bounded checkpoint or prove the figures were right when captured — we control the chain head, which is why archiving this endpoint independently is worth more than our word.
06
What these numbers cannot tell you.
Ambiguous definitions destroy credibility faster than unimpressive figures, so the limits are published with the same weight as the results. If you find something misleading here, tell us and we will change the definition and log the change.
Broad platform totals are exact
Daily account, reachable-storefront, plan, configured-custom-domain, and self-reported geography counts may change by one.
Sparse commerce stays private
A completed month and currency needs three contributing shops. Gross is rounded to $100 and small complements are withheld.
History shows its provenance
Attested checkpoints are distinguished from reconstructed history, and every exact daily payload is hash-linked.
Full definitions, privacy controls, and limitations
- 01
Broad platform counts are exact daily snapshots.
Registered accounts, active accounts, reachable storefronts, broad plan groups, configured custom domains, recent reachable storefronts, countries, and states or provinces are not longitudinally batched. They may change by one between consecutive snapshots. A configured custom domain does not prove active DNS, SSL, or traffic.
- 02
Current regional and broad-plan shares are derived from the exact counts in the displayed snapshot.
Share changes appear only when the payload can reference a verified prior snapshot under the same methodology; until then the comparison is explicitly unavailable. Country shares use all reachable storefronts, subdivision shares use their country roll-up, and no geography-by-plan cross-tab is published.
- 03
Location is self-reported at signup and never inferred from visitor IP addresses.
Supported countries and normalized states or provinces are published exactly. Legacy missing or unsupported countries use the same canonical US default as the rest of the application; missing subdivisions remain an explicit remainder within their country.
- 04
Commerce is released by completed UTC month, never as a live or rolling value.
A month-and-currency cell is published only when at least 3 distinct shops contributed during that exact closed interval. Current-month values remain pending, and suppressed months are never folded into a later total.
- 05
Completed-history and trailing-three-month totals are derived only from immutable monthly cells already present in the public payload.
Every aggregate change can therefore be reproduced from disclosed intervals.
- 06
The latest completed-month current-paid-plan seller count is withheld when either it or its free-plan complement contains fewer than three shops.
It classifies latest-month sellers by their plan when the daily snapshot is captured because historical plan membership is not reconstructed.
- 07
Gross merchandise value is rounded to the nearest $100 per qualified completed-month currency cell and includes offline payments sellers marked paid.
It measures commerce recorded by these shops, not money that flowed through Cottage CMS, and Cottage CMS takes no percentage of it.
- 08
Currencies are never converted.
Completed-month currency cells remain separate rather than being folded into a blended total at an invented exchange rate.
- 09
Survivorship bias applies to reconstructed history.
Registered-account and pre-ledger reachable-storefront history use records that still exist today. Owner-deleted accounts and cascaded orders make early totals conservative.
- 10
Storefront activation before durable instrumentation uses the earliest qualifying product, post, page, presentation-setting, or public-interaction evidence that survives from the stated historical-evidence boundary.
Imported publication dates are clamped to entry into Cottage CMS. A currently shop-visible physical product may establish reach at its first authoritative snapshot observation, never backward at creation. Deleted or unlogged actions can make a milestone later than the true first action or leave it absent.
- 11
The all-history shops-with-sales value is an exact distinct-shop count through a completed-month boundary.
It is not a current-storefront count, a signup cohort, or a conversion rate.
- 12
Seller-outcome cohorts are published only after at least ten surviving shops have a complete observation window.
Rates are rounded to ten percentage points, and no initial cohort is crossed with geography or plan.
- 13
The hash ledger proves consistency, not correctness.
It detects changes to published rows, but Cottage CMS controls the chain head. Independent archives remain the strongest external witness.
- 14
Every released snapshot is immutable.
Later refunds, deletions, or status corrections do not revise it. A definition or threshold change may re-evaluate completed intervals only in a new methodology-versioned snapshot; the earlier ledger row remains unchanged.
We would rather be checked than believed.
If you are a journalist, a researcher, or a competitor and something here does not add up, we want to hear about it. If you are citing us, every rung above has a copyable citation with its definition attached so the number never travels without its meaning.