Documentation
Limits & Quotas
Note: This page is machine-verifiable against
api/app/billing/bundles.py. If a value here disagrees with the code, the code wins.Seats, suppliers, datasets
| Quota | Náhled | Katalog | Provoz | Enterprise |
|---|---|---|---|---|
| Users (seats) | 1 | 1 | 3 | 5 |
| Suppliers | 1 | unlimited | unlimited | unlimited |
| Data sources | 1 | 1 | 5 | 10 |
Note: 2026-05-06 supplier decoupling: suppliers are unlimited on paid plans — they are a contact directory, not a technical capacity unit. Only Náhled keeps the 1-supplier hard cap.
Import file size (in MB, not rows)
Sytalog stopped limiting imports by row count on 2026-04-27 (v4 realignment). Only file size in MB matters.
| Limit | Náhled | Katalog | Provoz | Enterprise |
|---|---|---|---|---|
| CSV / XML / JSONL | 25 MB | 100 MB | 500 MB | 500 MB |
| XLSX | 10 MB | 25 MB | 50 MB | 50 MB |
| Catalog active capacity (per dataset) | 25 MB | 100 MB | 500 MB | 500 MB |
Tip: Big XLSX? Save it as CSV — typically 5–10× smaller. Most commercial feeds with 50,000+ products fit in 25 MB CSV even on Katalog.
Search queries per day
| Plan | Limit / day / user |
|---|---|
| Náhled | 10 |
| Katalog | 500 |
| Provoz | unlimited |
| Enterprise | unlimited |
The 11th query on Náhled (or 501st on Katalog) shows a paywall with a countdown to reset (UTC midnight).
Offer emails per user per month
| Plan | Emails / user / month |
|---|---|
| Náhled | 5 |
| Katalog | 100 |
| Provoz | 400 |
| Enterprise | unlimited (fair use) |
Per-user means Provoz with 3 users = 1,200 emails total. When you hit the limit, sending is rejected — you can top up (+200 emails for €11) or upgrade.
AI chat (Lumi) per user
Lumi has two parallel caps per user — both must pass.
| Plan | 5h rolling | 7-day rolling |
|---|---|---|
| Náhled | 0 (off) | 0 |
| Katalog | 40 | 150 |
| Provoz | 50 | 175 |
| Enterprise | 80 | 220 |
The 5h window resets 5 hours after the first message in the window (Claude Pro pattern). The weekly cap is a true 7-day rolling cap, not a calendar week.
XML feed auto-update frequency
| Plan | XML auto-update |
|---|---|
| Náhled | manual only |
| Katalog | min every 24 h |
| Provoz | min every 1 h |
| Enterprise | configurable, min 5 min |
Offer history retention
| Plan | Snapshot retention |
|---|---|
| Náhled | 30 days |
| Katalog | 90 days |
| Provoz | 1 year |
| Enterprise | unlimited |
What happens when you hit a limit
- Import above max file size → upload rejected with
PLAN_LIMIT_EXCEEDED_IMPORT_FILE_SIZE. Paywall + upgrade CTA. - Catalog active capacity → next insert in a split-file update (
on_missing=insert) fails. You must upgrade or shrink the dataset. - Search daily limit (Náhled, Katalog) → next query returns a paywall with countdown to reset.
- AI chat 5h window → 429 + paywall "Lumi resets in X minutes".
- AI chat weekly cap → 429 + paywall "Weekly limit reached — upgrade or wait".
- AI chat on Náhled → 403 immediately, modal "AI chat starts on Katalog".
- Offer emails over limit → sending rejected. Paywall offers top-up or upgrade.
- Supplier limit (Náhled only) → 2nd supplier blocked, paywall "Second supplier = higher plan".
- Seat limit → user can be invited but lands in
seat_state = "over_limit"— read-only until upgrade.