# ROASTERY pricing

Coffee operations platform: green contracts, inventory, roasting, quality, production planning, orders and cafés. All prices in EUR, per month. Every plan includes the public API for the modules it covers — there is no separate integration tier.

Human version: https://roastery.run/pricing

## Plans

### Starter — €0 free, forever

Roast, record, and keep the log honest. For a single-machine roastery.

- Roast profiles and batch history
- Live curves from any Artisan-compatible bridge
- Artisan import for the roasts you already have
- Full API access for the roasting module

Limits: Locations 1, Machines 1, Users 3.
No card required. A real plan, not a trial.

### Core — €95 per month

Inventory and quality, on a ledger you can audit. For a roastery that has stopped trusting its spreadsheet.

- Everything in Starter
- Green inventory on an append-only ledger
- Cupping sessions with per-cupper scores and spread
- Physical grading that quarantines a failing lot

Limits: Locations 2, Machines 3, Users 10.

### Scale — €275 per month

Add the order book. For a wholesale roastery selling what it roasts.

- Everything in Core
- Customers and sales orders
- First-expiry-first-out allocation
- Shortfalls reported as shortfalls, never as success

Limits: Locations 5, Machines 10, Users 30.
Most roasteries buying their own green start here.

### Advanced — €999 per month

Green contracts, planning, cafés, and the whole public API. For a roastery buying its own green and running its own bars.

- Everything in Scale
- Contracts, positions and landed cost
- Production scheduling and material requirements
- Café telemetry, webhooks and the full public API

Limits: Locations Unlimited, Machines Unlimited, Users Unlimited.

## On every plan

- **The same API the product uses** There is no separate integration tier and no screen that can do something the API cannot — the console is another client of the same operations.
- **An append-only ledger under every weight** Nothing changes a quantity without a ledger row, so a stock figure is auditable rather than merely plausible.
- **Exact decimal arithmetic** Weights and money are exact decimals end to end. A float rounding error in a coffee ledger is not a rounding error, it is a discrepancy somebody has to explain.
- **Your data, exportable** Every list is exportable as CSV from the same query the screen ran, and the API returns everything the console can see.

## Compare plans

| Feature | Starter | Core | Scale | Advanced |
| --- | --- | --- | --- | --- |
| **Limits** |  |  |  |  |
| Locations | 1 | 3 | 10 | Unlimited |
| Roasting machines | 2 | 6 | 20 | Unlimited |
| Users | 5 | 20 | Unlimited | Unlimited |
| **Roasting** |  |  |  |  |
| Profiles and batch history | Yes | Yes | Yes | Yes |
| Live curves at 1 Hz — Streamed from any bridge. A dropped uplink replays from the bridge's own buffer, so the curve comes back identical to one that never dropped. | Yes | Yes | Yes | Yes |
| Artisan import | Yes | Yes | Yes | Yes |
| **Inventory** |  |  |  |  |
| Green coffee ledger — Append-only. Every movement carries the balance it produced, and nothing can change a weight without one. | No | Yes | Yes | Yes |
| Roasted lots and blends | No | Yes | Yes | Yes |
| Materials and bills of materials | No | No | Yes | Yes |
| Landed cost — Derived from what you bought rather than typed in twice. Change a freight figure and every affected lot, batch and open-order margin follows. | No | No | No | Yes |
| **Quality** |  |  |  |  |
| Cupping with per-cupper scores — Reports the spread alongside the mean. An 85 where everyone agreed and an 85 from an 80 and a 90 are different results. | No | Yes | Yes | Yes |
| Grading that quarantines — A failing grading blocks the lot from being reserved. Releasing it requires a reason, recorded. | No | Yes | Yes | Yes |
| **Orders and planning** |  |  |  |  |
| Customers and sales orders | No | No | Yes | Yes |
| FEFO allocation — First expiry, first out. Roasted coffee has a usable window measured in weeks, so the lot that should ship first is the one that goes stale first — which stops being FIFO once two batches are roasted on different days. | No | No | Yes | Yes |
| Production scheduling — Merges demand, sizes it to your drums, and orders the day: light before dark, decaf last. | No | No | No | Yes |
| **Sourcing and cafés** |  |  |  |  |
| Green contracts and positions | No | No | No | Yes |
| Sample management | No | No | No | Yes |
| Café shot telemetry — Judged per group head. One failing group on a three-group machine is the most common real fault, and a machine-level average hides it. | No | No | No | Yes |
| POS reconciliation | No | No | No | Yes |
| **Integration** |  |  |  |  |
| Public RPC API | Yes | Yes | Yes | Yes |
| Webhooks — Signed with HMAC-SHA256, retried over roughly eight hours, and backed by a transactional outbox — the event commits with the change it describes. | No | No | No | Yes |
| OAuth client credentials — For a machine acting on behalf of an organization, validated statelessly with no database round trip per request. | No | No | No | Yes |
| Traceability certificates and QR pages | Yes | Yes | Yes | Yes |

### Modules

| Module | Starter | Core | Scale | Advanced |
| --- | --- | --- | --- | --- |
| Dashboard, catalogue and reports | Yes | Yes | Yes | Yes |
| Coffee inventory management | No | Yes | Yes | Yes |
| Resource planning | No | No | No | Yes |
| Roasting & QC | Yes | Yes | Yes | Yes |
| Cupping and grading | No | Yes | Yes | Yes |
| Order fulfillment | No | No | Yes | Yes |
| Green contracts & costs | No | No | No | Yes |
| Sample management | No | No | No | Yes |
| Café intelligence | No | No | No | Yes |
| Public API and webhooks | No | No | No | Yes |

## Questions

### What happens when I reach a limit?

The operation that would exceed it returns a 402 naming the limit, the current count and the plans that raise it. Nothing already created stops working, and you are never billed past your plan without choosing to upgrade.

### Is the API really on every plan?

Yes, for the modules your plan includes. The console is another client of the same operations, so a screen that can do something the API cannot is not a thing we can accidentally ship. Webhooks and OAuth client credentials are the exception — those are on Advanced.

### Do I need special hardware?

No. Roast telemetry arrives over a documented HTTP endpoint, so anything that can make a request can stream — including Artisan, which most roasteries already run. We ship the bridge and the ingest contract; you do not need a proprietary box.

### Can I move a lot of history in?

Artisan exports import directly, including the timestamp quirks that make most importers offset every curve. Everything else goes through the same public API the product uses, so a bulk import is a script rather than a support ticket.

### What happens to my data if I leave?

Every list exports as CSV from the same query the screen ran, and the API returns everything the console can see. There is no export tier and nothing is held back.

---

API reference: https://docs.roastery.run
