# Formspark alternative: Ikiform vs Formspark

> Ikiform vs Formspark: one-time submission bundles against a monthly plan, EU storage against Asia-Pacific, plus a migration guide for submit-form.com forms.

Checked 2026-10-24 · https://ikiform.com/alternatives/formspark

Formspark's pricing is unusual: no subscription. Each account starts with 250 free submissions, and you buy more as one-time bundles that don't expire. For a low-traffic site that is often the cheapest option there is. It also stores data in the EU, in Ireland and Germany, and has a wide choice of captcha providers.

Ikiform charges monthly or yearly by submission volume. Where it differs is less about price and more about what happens after submit: signed webhooks with retries, server-side field validation and a JSON-first endpoint for code.

> Checked on October 24, 2026 against Formspark's public pricing pages and docs. Ikiform makes this comparison; every Ikiform fact comes from our own docs. Prices and limits change, so the sources are listed at the end.

## At a glance

| Feature | Ikiform | Formspark |
| --- | --- | --- |
| Free plan | None. Every plan is paid | 250 submissions per account, once, not per month |
| Paid plans | Pro from $6/mo for 500 submissions, up to $399/mo for 1,000,000. Every feature on every tier. Yearly is 10 months' price for 12 | One-time $25 upgrade for 50,000 submissions (listed as half price), then bundles. No automatic payments, bundles don't expire |
| Forms | Unlimited on every tier | 10 on Free, 100 after the upgrade |
| File uploads | Not supported yet. A post with a file gets `422 files_not_supported` | Files go to a third-party store such as Uploadcare or Cloudinary; Formspark keeps the link. A post with the file itself gets `400` |
| Webhooks | 3 endpoints per workspace, signed with HMAC-SHA256, 9 attempts over about 3 d 6 h, with delivery logs | Webhooks, Slack, Zapier, Make, Sheets, Notion and Airtable |
| Spam protection | Honeypot (`_gotcha`), content scoring, per-form rate limits, allowed domains and an optional Cloudflare Turnstile check, with no keys needed | Automatic filtering plus Botpoison, Turnstile, hCaptcha or reCAPTCHA, custom spam words, allowed domains and a honeypot |
| Spam response | Spam gets a normal success, so bots learn nothing | Rejected posts get an error page or `403`, and are kept 30 days for review |
| Redirects | `_redirect` as a full `https:` URL on an allowed domain, or any URL in the dashboard | `_redirect` as a full URL or a relative path, `_error` for failures, field values appended unless `_append=false` |
| Retention | Received submissions until you delete them, spam for 30 days | Forever |
| Data location | Cloudflare, with the database in Asia-Pacific. EU Standard Contractual Clauses in the DPA | Stored in the EEA, in Ireland and Germany, under a no-signature DPA |

## Where Formspark is the better choice

- Your site gets a few hundred submissions a year. A one-time bundle will likely cost less than any monthly plan, including Ikiform's.
- You need submissions stored in the EU. Formspark keeps data in Ireland and Germany; Ikiform's database is in Asia-Pacific.
- You want a choice of captcha: Botpoison, Turnstile, hCaptcha or reCAPTCHA.
- You want relative redirects, an error redirect, or field values carried into the thank-you URL.

## Where Ikiform is the better choice

- You want spam to look like success to the bot. Formspark answers rejected posts with an error; Ikiform answers spam with the same `201` or redirect as a real post and stores it separately.
- You want webhooks you can verify. Every Ikiform delivery is signed with HMAC-SHA256 and retried on a fixed schedule for about 3 days.
- You want typed validation: required fields, email and URL checks, number ranges and patterns, rejected with field-level errors before anything is stored.
- You submit from a server and need a secret key that skips the domain check. Formspark's allowed domains reject server posts, since they carry no origin.

## Who should pick which

Pick Formspark for low-volume sites, for EU data storage, or if you dislike subscriptions. It is well documented.

Pick Ikiform if submissions feed an app or automation that needs signed, retried webhooks and validated data, or if you post from servers as well as browsers.

## Migrating from Formspark

Formspark and Ikiform share the `_redirect` name and both let you set a custom honeypot name, so most markup stays. The differences are in redirect rules and the extra `_` fields Formspark supports.

### Field mapping

| Formspark | Ikiform | Notes |
| --- | --- | --- |
| `action="https://submit-form.com/..."` | `action="https://ikiform.com/f/frm_..."` | One endpoint per form. |
| `_redirect="/thanks"` | `_redirect="https://example.com/thanks"` | Ikiform needs a full `https:` URL on an allowed domain. Relative paths fall through to the hosted thank-you page. |
| `_append` | None | Ikiform never adds field values to the redirect URL, so you can drop it. |
| `_error` | None | Rejected browser posts see Ikiform's hosted error page, which lists problems by field and links back. |
| `_honeypot` | Honeypot field setting | Set **Honeypot field** to `_honeypot`, or rename the input to `_gotcha`. |
| `_gotcha` | `_gotcha` | Ikiform's default honeypot name. |
| Botpoison, hCaptcha or reCAPTCHA | Turnstile | Switch to the Ikiform check (no keys) or your own Turnstile keys. |
| Uploadcare or Cloudinary link fields | Same | Keep the widget. It submits a URL string, which Ikiform stores like any other value; use a `url` field type to validate it. |
| Custom spam words | None in the dashboard | Ikiform scores a built-in list of spam phrases on every form. |

### Before and after

**Formspark** (`subscribe.html`)

```html
<form action="https://submit-form.com/your-form-id" method="POST">
  <input type="hidden" name="_redirect" value="/thanks" />
  <input type="hidden" name="_append" value="false" />
  <input type="hidden" name="_error" value="https://example.com/error" />
  <input type="checkbox" name="_honeypot" style="display:none" tabindex="-1" autocomplete="off" />
  <input type="email" name="email" required />
  <textarea name="message"></textarea>
  <button type="submit">Subscribe</button>
</form>
```

**Ikiform** (`subscribe.html`)

```html
<form action="https://ikiform.com/f/frm_xxxxxxxxxxxxxxxx" method="post">
  <input type="hidden" name="_redirect" value="https://example.com/thanks" />
  <input type="checkbox" name="_honeypot" tabindex="-1" autocomplete="off" hidden />
  <input type="email" name="email" required />
  <textarea name="message"></textarea>
  <button type="submit">Subscribe</button>
</form>
```

### Steps

1. Create an Ikiform form and copy the endpoint.
2. Add your domains under **Allowed domains**, plus `localhost` while you test.
3. Set **Honeypot field** to `_honeypot` if you want to keep the existing input.
4. Change the `action`, make `_redirect` a full URL, and remove `_append` and `_error`.
5. Replace your captcha with the Ikiform human check if you used one.
6. Export your Formspark submissions as CSV or JSON, then retire the old form.

### What doesn't carry over

- Unused Formspark bundles don't transfer, and Ikiform has no one-time pricing.
- Error redirects and appended query values have no equivalent.

## FAQ

### Is Formspark cheaper than Ikiform?

For most low-volume sites, yes. Formspark sells one-time bundles that never expire, and Ikiform is a monthly or yearly plan. The trade-off is in features like signed webhooks and server-side validation, not price.

### Can I keep my `_honeypot` input?

Yes. Set the form's honeypot field name to `_honeypot`. Any name you pick there is treated as reserved and never stored.

### Why does my relative `_redirect` not work on Ikiform?

A `_redirect` comes from the visitor's browser, so Ikiform only follows full `https:` URLs on the form's allowed domains. Set the redirect in the dashboard if you need something else.

### Where is my data stored?

Formspark stores data in Ireland and Germany. Ikiform runs on Cloudflare with its database in Asia-Pacific and covers transfers with the EU Standard Contractual Clauses in its DPA. If EU storage is a hard requirement, choose Formspark.

## Related docs

- [Rules for _redirect](https://ikiform.com/docs/html.md#redirect-rules)
- [How spam is handled](https://ikiform.com/docs/spam.md#how-spam-is-handled)
- [Fields and validation](https://ikiform.com/docs/fields.md)
- [Submitting from a server](https://ikiform.com/docs/guides/server.md)
- [Data Processing Agreement](https://ikiform.com/dpa)

## Sources

Checked on October 24, 2026.

- [Formspark pricing](https://formspark.io/pricing/)
- [Formspark spam protection](https://documentation.formspark.io/setup/spam-protection.html)
- [Formspark file uploads](https://documentation.formspark.io/setup/file-uploads.html)
- [Formspark redirection](https://documentation.formspark.io/customization/redirection.html)
- [Formspark DPA](https://formspark.io/legal/dpa/)

## Trademarks and accuracy

Formspark and the other product names on this page are trademarks of their owners. Ikiform isn't affiliated with, endorsed by or sponsored by any of them. What this page says about Formspark comes from its public pricing pages and docs as of October 24, 2026, linked under Sources. If anything here is wrong or out of date, email [hello@ikiform.com](mailto:hello@ikiform.com) and we'll correct it.
