Furrow Forms

For agencies

Never build a client form backend again.

One API runs every client's website forms. Write your markup, drop in the Furrow MCP, and the agent provisions the backend — spam, email, webhooks — the same way on every build. $199/yr, unlimited everything.

paste this into your agent

Fetch furrowforms.com/ai and set up this client's forms.

Prefer a traditional dashboard? Sign in →

workspace · your-agency
[ $199/yr ]
clients/
├── acme-roofing/     contact · quote · careers
├── blue-fern-cafe/   contact · reservations
├── harbor-dental/    contact · appointment
└── northside-gym/    contact · trial · newsletter
    each site owns: turnstile · domains · notify · webhook
    + file uploads with a private per-site inbox
    every form inherits them · overrides are opt-in

Bring your own HTML

Your HTML is the form builder

No drag-and-drop builder, no template tags, no restyling someone else's markup. Write the form your design calls for and hand the wiring to an agent.

[ the cms way ]

Five steps per form

  1. 1. Build the fields in a form-builder UI
  2. 2. Wire the form up to the CMS
  3. 3. Render it with template tags, then fight the markup into your design
  4. 4. Configure the spam protection
  5. 5. Configure the notification emails

Repeat for the quote form. And the careers form. And the next client.

[ furrow forms ]

Two steps, one of them yours

  1. 1. Write the form in your own HTML — your markup, your classes, exactly your design
  2. 2. Tell your agent to wire it to Furrow — endpoint, spam protection, notification emails, and webhook land in one pass

The same prompt maintains it: every form on every client site, one instruction away.

Built for the roster

The chores that eat agency hours, delegated

01[ drop-in ]

Rebuilding form handling on every new site build

The form backend stops being part of the build. Drop the Furrow MCP into the project and the agent provisions the whole thing — client, website, forms, spam stack, notifications, webhook — the same shape every time, no custom code.

New build for Blue Fern Cafe — provision forms the usual way.

02[ one cost ]

A form plugin license for every client install

One infrastructure cost covers the whole roster: $199/yr, unlimited clients, sites, and forms. No per-site licenses to buy and renew — and no plugin updates to babysit across every install.

Move harbordental.com off its form plugin — same forms, Furrow backend.

03[ cascade ]

Rotating a CAPTCHA key across 14 forms on a client site

Turnstile keys live on the project, never the form. Rotate once — all 14 forms use the new keys immediately.

Rotate the Turnstile keys on acmeroofing.com.

04[ one edit ]

A client changes who gets the lead emails

Change the notification list on the project — contact, quote, and careers forms all pick it up. No sweep, no drift.

Send Harbor Dental's leads to their new office manager.

05[ flat ]

Per-form pricing that punishes big rosters

Clients, projects, and forms are unlimited. Fifty forms across twelve clients costs the same $199/yr as five forms on one.

Add a careers form to every client site.

06[ archive ]

Offboarding a client without losing history

Archive instead of hard delete — the client, their projects, and submissions stay intact and out of the way.

Archive Northside Gym — keep the history.

Client kickoff

Onboard the next client in one prompt

New client signed this morning, forms live before lunch: tell your agent the domain, keys, and forms you need. One idempotent bootstrap_site call creates the client, the website, and every form — then the agent drops the snippet into the repo and verifies the webhook with a signed test delivery.

How agent setup works →
agent · client kickoff
[ live ]

New client: Northside Gym, northsidegym.com. Contact, free-trial, and newsletter forms. Webhook to their CRM.

⚙ bootstrap_site · client ✓ site ✓ forms (3) ✓

⚙ get_snippet · framework: nextjs ✓

⚙ test_webhook ·200 OK · signature verified

Northside Gym is live — three forms inheriting the site's Turnstile keys and routing.

Leads, delivered

Every client's leads land where that client needs them

[ email ]

Per-project recipients

Each site notifies its own list, with template tokens like {{project.name}} keeping every email readable. Client staff never see another client's leads — and on Pro, notification emails carry your agency's branding, or none at all.

[ webhook ]

Signed, retried, logged

Point each client's webhook at their CRM. HMAC-signed deliveries retry with backoff for ~24 hours, and the per-project delivery log settles "did it arrive?" disputes.

[ burrow ]

Agency reporting, coming

Furrow webhooks are built to feed Burrow, our agency reporting product — a native integration is being built now.

FAQ

Forms for agencies, answered

What is the best form backend for agencies?

Agencies need what single-site tools lack: a client → website → form hierarchy, settings that cascade per site instead of per form, unlimited forms without per-form fees, and a way to onboard a new client fast. Furrow Forms is built around exactly that model — one $199/yr workspace runs an entire client roster, and an AI agent can provision a new client’s forms in one call.

Do we still have to build a custom form backend for each client site?

No — that is exactly the repetition Furrow removes. Instead of standing up storage, spam filtering, and email delivery per project (or re-wiring a CMS form plugin), you drop the Furrow MCP into the build and the agent provisions the entire backend in one idempotent bootstrap_site call: client, website, forms, spam stack, notification routing, and a webhook it verifies itself. Every project gets the same production-grade form infrastructure with zero custom code.

How do agencies manage forms across many client websites?

In Furrow Forms, each client is a first-class object holding their websites (projects), and each website owns its security and routing: Turnstile keys, allowed domains, notification emails, webhook. Every form under a site inherits those settings automatically, with per-form overrides only where needed. Submissions are filterable by client, project, and form.

Do agencies pay per client, per site, or per form?

None of those. One workspace is $199/yr with unlimited clients, projects, and forms, and 10,000 submissions a month pooled across the roster. Expansion packs add +5,000 submissions/month for $99/yr each. Running multiple separate agencies or businesses? Each gets its own isolated workspace under the same login.

Can I use my own HTML instead of a form builder?

Yes — that’s the intended workflow. Write whatever markup your design calls for, point the form’s action at its Furrow endpoint, and it works: no builder UI, no template tags, no restyling someone else’s markup. In practice an agent does the pointing — it reads your HTML, wires each form to its endpoint, and configures the spam protection, notification emails, and webhook in the same pass. Those are the four separate setup chores a CMS form plugin walks you through one screen at a time.

Can an AI agent onboard a new client’s forms?

Yes — end to end. An agent calls bootstrap_site with the client name, domain, Turnstile keys, notification emails, and webhook; the client, website, and every form exist in one idempotent call. It then generates the frontend snippet for HTML, Astro, or Next.js and fires a signed test webhook to verify delivery. Kickoff to live forms, one conversation.

How do client leads reach the client’s CRM or reporting?

Every submission is delivered by email (per-project recipient lists with template tokens) and by HMAC-signed webhooks with automatic retries and a per-project delivery log — point each client’s webhook at their CRM. A native integration with Burrow, our agency reporting product, is in the works.

Bring the roster. Leave the busywork.

paste this into your agent

Fetch furrowforms.com/ai and set up forms for this site.

Setup for agents →