How it works

From zero to a working form in under a minute, from the dashboard or the terminal.

How it works

Three steps. No backend code.

Same flow whether you're clicking through the dashboard or running a CLI command — every step is reachable from both surfaces.

// 01

Get a form ID

Sign up at app.formsubmit.site (or run formsubmit init from the terminal). You get a unique form endpoint.

# CLI
$ npx formsubmit-cli init --name "Contact"
✓ Form created: 7ab4aa9a-c45c-4f6b-ba1d-4e7447224a1e
// 02

Paste an HTML form

Drop the snippet into any static site — Astro, Next, Hugo, plain HTML. No JS, no backend, no SDK.

<form action=".../f/7ab4aa9a" method="POST">
  <input name="email" required>
  <button>Submit</button>
</form>
// 03

Watch submissions land

See submissions in the dashboard, or stream them via formsubmit submissions list --json. Email notifications optional.

$ formsubmit submissions list 7ab4aa9a --limit 3
When              email                   message
2026-05-21 08:37  [email protected]    Loved the demo
FAQ

Questions, mostly answered.

How does FormSubmit work? +
Point your
at https://app.formsubmit.site/f/{form_id} and POST as you would to any backend. We capture the data, run spam checks, save it, and (optionally) email you. No JS required, no server to host.
What's the difference between the CLI and the dashboard? +
Same product, different surfaces. The CLI is for developers and AI agents — everything is a shell command with --json output. The dashboard is for everyone else — sign up at app.formsubmit.site, click around. Both write to the same database.
How much does it cost? +
Pay-as-you-go credits. 100 credits = $10. 1 credit = 1 submission. Bigger packs cost less per submission (down to $0.07). Credits never expire. Spam doesn't get charged. Email notifications add +1 credit per submission (off by default).
Do you work with my static site framework? +
Yes — Astro, Next (static export), Hugo, Eleventy, Jekyll, plain HTML, anything. FormSubmit is a backend; it just receives POSTs. No framework integration needed.
How much does it cost to get started? +
100 credits for $10 — and that's the minimum top-up. 1 credit = 1 submission. After that you only buy more when you need them. No subscription, no auto-renew, no monthly minimum. Credits never expire.
How does the CLI authenticate? +
formsubmit login opens a browser to authorize the CLI via a device-code flow (same pattern as gh auth login). The CLI stores a Bearer token at ~/.formsubmit/config.json with mode 0600. You can also paste a token via --token for headless / CI use.
Can my AI agent use FormSubmit? +
That's exactly what it's built for. Claude Code, Cursor, Replit, Bolt, v0, Lovable — anything that can run a shell command can ship a form backend with one tool call. See the agent guide for the canonical recipe.
What about spam? +
Three layers: rate limiting per IP per form, content scoring (suspicious patterns), duplicate detection. Flagged submissions are stored but not charged a credit and don't trigger email notifications.
Where is the data stored? +
Edge-hosted on a major cloud provider — submission rows in a managed SQLite database, file uploads in S3-compatible object storage. Data lives in the region closest to the edge that received it (US / EU clusters).

Still stuck? Email [email protected].

Two ways in

Pick your surface. Same backend either way.

Spin up a form in the terminal, or click through the dashboard. Both write to the same database, both bill from the same credit pool.