Skip to content
Docs · Start here

Limits & scaling

Every plan number and technical limit in one place, what happens at each one, and how each service behaves as an app grows to millions of users.

View as Markdown
All topics
On this page

Plans are per workspace and limit how many things you create and the monthly allowances. Free limits are per person, across all your free workspaces. Every paid workspace has its own limits. The technical limits below apply on every plan. File storage, database storage and build minutes have an amount included per plan; bandwidth and function traffic have no plan quota yet — they are listed as not metered.

Plans

HobbyProEnterprise
Price (per workspace)Free$20 a month$500 a month
AI usagePay as you go from your balance$10 a month included$100 a month included
Emails (rolling 30 days)1005,000100,000
Custom sending domains11050
Apps and sites (projects)3201,000
Server appsPro and upIncludedIncluded
Functions550100
Databases (10 GB each)110100
Storage buckets220500
Vector collections110200
Memory stores220500
Agents220500
Auth pools110100
Payment accounts110100
Media assets (videos and live channels)Pro and up1001,000
Repos550500
Your own domains connected220500
Team members310100
Workspaces you can own210100
AI requests a minute606006,000
Agent runs at once1520

Past a count the create call answers 402 with code plan_limit, the limit and the current count. On Hobby the count is the total across every free workspace the owner owns (the answer carries shared_workspaces), and upgrading the workspace gives it its own limits. Server apps are on Pro and up, and videos and live channels on Pro and up: on a plan without them the deploy or create answers 402 plan_limit with required_plan, before anything is built or created. Server apps that were already live on a free workspace when server apps moved to Pro keep running and can be redeployed. Nothing existing is deleted when a plan changes; only new creates are refused.

Usage included per plan

Measured daily (sizes) and per deploy (build minutes), and shown on Billing → Usage. The owner is emailed at 80% and at 100%.

UsageHobbyProEnterprisePast it
File storage1 GB100 GB1,000 GBHobby: new uploads are refused (402 usage_limit). Pro and Enterprise: $0.05 per GB a month, charged daily from the Balance; paused (402 usage_paused) only while a charge cannot be paid: the Balance is empty or smaller than the charge, or the spending limit is reached.
Database storage0.5 GB10 GB100 GBHobby: database writes that add data (reads and deletes still work) are refused (402 usage_limit). Pro and Enterprise: $1.00 per GB a month, charged daily from the Balance; paused (402 usage_paused) only while a charge cannot be paid: the Balance is empty or smaller than the charge, or the spending limit is reached.
Build minutes (per calendar month, UTC)100 minutes1,000 minutes10,000 minutesHobby: new deploys are refused (402 usage_limit). Pro and Enterprise: $0.01 per minute, charged daily from the Balance; paused (402 usage_paused) only while a charge cannot be paid: the Balance is empty or smaller than the charge, or the spending limit is reached.

Database storage past the limit holds only statements that add data (INSERT, UPDATE, REPLACE, UPSERT, CREATE, ALTER), and a batch that contains one is held whole: reads and DROP sent on their own always run, and so does DELETE unless the database has triggers (a trigger can add data when rows are deleted: drop it first), so you can clean up. Database sizes are measured again daily, so room you free counts from the next measurement. Each single database still stops at the engine's 10 GB.

Not metered or capped yet

  • Requests and bandwidth to sites and server apps, and traffic to function URLs.
  • Server-app running time, errors and latency.

Databases

LimitValue
Size of one database10 GB
One row or value2 MB
One SQL statement100 KB
Bound parameters per statement100
Time per query30 seconds
Columns per table100
Statements in one batch100
Query requests per workspace600 per 5 minutes (a batch counts once)

Deploys and server apps

LimitValue
One upload (folder, tar.gz or JSON files)25 MB compressed, 40 MB unpacked
One file10 MB
Files in one upload5,000
Files a static site serves500
Git repository download20 MB compressed, no file-count cap
Build timeabout 13 minutes
Server appone container per app (about a quarter of a CPU and 1 GB of memory), no extra copies
Server app sleepafter 15 idle minutes; disk wiped on sleep and on every deploy
Awake server apps40 across the whole platform today; sleeping apps do not count

Functions, storage and repos

LimitValue
Function codeone ES module, at most 200 KB, no npm install
Test invokefirst 16 KB of the response, 10-second timeout
One storage upload5 GB (one signed PUT)
Object key1,024 characters
Signed link lifetime60 seconds to 7 days (default 15 minutes)
Objects per listing page1,000 (default 100), with a cursor for the next page
Repo push over REST500 files, 10 MB per file, 25 MB per push

AI, vectors, memory and agents

LimitValue
Gateway input200,000 characters (system prompt plus messages), up to 500 messages
Gateway outputmax_tokens up to 8,192 (2,048 on the Llama edge models); default 1,024
AI requests a minute60 hobby, 600 pro, 6,000 enterprise — chat and embeddings counted separately
What one AI request may reserve$2 hobby, $10 pro, $10 enterprise (402 ai_request_too_large)
Embeddings per call100 inputs
Vector dimensions384, 768 (default), 1,024 or 1,536
Vectors per upsert1,000 (100 when sending text to embed)
Vector query topK100, or 50 with full metadata or values
Memory value / key1 MB / 512 characters
Conversation window1,000 most recent messages per scope
Memory quotashobby: 10,000 items per store, 25 MB per workspace; pro: 100,000 items per store, 250 MB per workspace; enterprise: 1,000,000 items per store, 1 GB per workspace; every kind of store counts, and a write past them gets 402 plan_limit
Agent steps1–24 per run (default 8)
Agent runs6 a minute per workspace; input up to 32,000 characters
Media uploadvideo only, up to 1 hour

Mail, payments and auth pools

LimitValue
Email per callone recipient; text and/or HTML
Email quota100 hobby, 5,000 pro, 100,000 enterprise per rolling 30 days; optional daily cap of your own
Custom sending domains1 hobby, 10 pro, 50 enterprise per workspace (pending and failed domains count until removed)
Checkout amount$0.50 to $1,000,000, USD, one-time
Checkout linksingle use, expires after 24 hours
Earnings hold7 days per payment before it can be withdrawn
End-user password8–256 characters; 10 wrong tries lock the account for 15 minutes
End-user tokenHS256 JWT, valid 7 days
Browser sign-up10 per IP an hour, 600 per pool an hour
Codes asked for from the browser50 an hour and 300 a day per pool; at most 20% of the email quota per workspace (20 / 1,000 / 20,000 per 30 days)

Rate limits

Every 429 carries code, a Retry-After header and retry_after seconds in the body. API quotas also send X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset. Back off for Retry-After seconds and try again.

WhatLimitCode
AI chat60 / 600 / 6,000 a minute (hobby / pro / enterprise)ai_rate_limited
Embeddings, memory search, text sent to vectorsa separate bucket of the same sizeai_rate_limited
Database queries, vector calls, semantic memory600 calls per 5 minutes per workspace, shared (a batch of statements is one call)rate_limited
Agent runs6 a minute per workspacerate_limited
Balance top-ups10 an hourrate_limited
New workspaces5 a day per personrate_limited
Emailyour optional daily capdaily_cap
Auth-pool codes asked for from the browser50 an hour and 300 a day per pool, and 20% of the email quota per workspacecode_limit

How it scales

ServiceAt millions of users today
Static sitesScale: served from the edge cache close to each visitor, the rest from object storage.
FunctionsScale: each request runs at the edge location nearest the caller, with no servers to size.
StorageScale: uploads and downloads go straight to object storage, never through Harakumo. Stored bytes count toward the plan's file storage (1 GB hobby, 100 GB pro, 1,000 GB enterprise); past it Hobby stops and Pro and Enterprise pay $0.05 per GB a month. Each signed link is one API call to Harakumo, so sign links with a longer expiresIn and reuse them rather than signing one per page view.
Auth poolsVerify tokens in your app with the JWT secret (no call per request). Sign-ups and logins run on the shared platform and suit apps with thousands of active users.
DatabasesEach database has one writer and stops at 10 GB, and each query is an HTTPS call through Harakumo capped at 600 requests per 5 minutes per workspace. Good for development, internal tools and low-traffic apps; not yet for a high-traffic public app. Batch statements, cache reads and split data across databases.
Server appsOne small container per app with no extra copies, a cold start after it sleeps, and a platform-wide cap on awake apps. For large traffic, put the front end on a static site and the server logic in functions.
AIModel capacity scales with the vendors; your workspace is capped by the per-minute limits above.
MailUp to the plan's 30-day quota, one recipient per call.

Coming: databases reached directly from your functions and apps (no HTTPS hop, no shared limit), read replicas, a Postgres engine for datasets over 10 GB, extra copies and larger sizes for server apps, and metered traffic.