GDPR-compliant contact form, hosted in the EU, no DPA negotiations required.
Formspring collects, filters, routes, and retains every submission. Developers still get one endpoint, signed webhooks, API access, and the examples below.
·· 01
Capture
visitor · website form
·· 02
Filter
Formspring · spam + honeypot
·· 03
Route
Formspring · integrations + webhooks
·· 04
Notify
team · email · Slack · CRM
·· 05
Retain
Formspring · retention rule
owner
DPOs, compliance teams, EU founders, regulated industries
handoff
EU visitor -> EU-hosted form -> per-form retention -> queued erasure
retention
Per-form rule · GDPR-friendly · EU-hosted
What this workflow fixes
From paper-cut to plumbing.
Pain on the left, what changes on the right.
Lost or delayed submissions
Persistent inbox, signed webhooks, retries
Spam and low-quality responses
Honeypot + hCaptcha + AI moderation
Manual forwarding and copy-paste
Route to Slack, Sheets, Notion, CRM, webhook
Unsafe file attachments
Encrypted storage, time-limited signed links
Unclear GDPR retention
Per-form retention rule with auto-cleanup
Scattered inboxes and handoffs
One destination per team, audit trail
Most form backends were built in San Francisco and bolted on a DPA template years later. Formspring was built in Germany, runs on EU-resident infrastructure, and treats lawful basis, retention, and erasure as first-class form settings rather than legal copy. If your DPO has ever asked "where exactly is this data stored?" and the answer involved a 40-page transfer impact assessment, this page is for you.
This is the same backend powering forms on regulated European sites - public sector, healthcare-adjacent, EU SaaS - where Schrems II is a daily reality rather than a footnote. The list of GDPR-relevant controls below is what you actually get out of the box, not what's promised in a sales call.
Technical implementation
<!-- 1. Create form in dashboard, enable EU-hosted storage -->
<!-- 2. Add the consent checkbox - audit-log row written on submit -->
<!-- 3. Set per-form retention policy (default 30d on Free) -->
<form action="https://formspring.io/f/abc123" method="POST">
<input name="name" required>
<input type="email" name="email" required>
<textarea name="message" required></textarea>
<label>
<input type="checkbox" name="consent" value="granted" required>
I consent to Formspring processing this message under their
<a href="/legal/privacy">privacy policy</a>. (GDPR Art. 6(1)(a))
</label>
<button>Send</button>
</form>The compliance pillars, at a glance
Every GDPR question a procurement team or DPO will ask, with the Formspring answer in the same row. No "contact us for details," no "available on enterprise."
| Pillar | What Formspring provides |
|---|---|
| Data residency | Submissions, files, backups, and logs stored exclusively in EU data centres in Germany and Finland. No US replicas, no CDN egress to non-EEA regions. |
| Signed DPA | A pre-signed Data Processing Agreement under GDPR Art. 28 is available on every paid plan. Download it, counter-sign, attach to your records. No legal negotiation required for the standard template. |
| Lawful-basis options | Per-form selection of consent (Art. 6(1)(a)), contract necessity (Art. 6(1)(b)), or legitimate interest (Art. 6(1)(f)). The choice is stamped on each submission for your audit trail. |
| Retention controls | Per-form retention rules. Default 30 days on Free, unlimited on paid with explicit choice. Submissions are deleted via queued job after the rule fires; deletion is logged. |
| Right to erasure | One-click erasure from the dashboard plus a public erasure request endpoint for data subjects. Deletion fans out to integrations and webhook destinations via queued jobs. |
| Consent capture | Built-in consent checkbox field type. Each submission writes an audit-log row with timestamp, hashed IP, and the exact consent text shown to the visitor. |
| Sub-processors disclosure | Public sub-processors page, versioned and dated. Email subscription for 30-day advance notice of any addition or change. |
| Encryption | TLS 1.3 in transit, AES-256 at rest. File uploads land in private S3-compatible storage with signed, time-limited download URLs only. |
| Audit log | Submission-level audit log: who viewed, who exported, who deleted, when. Retained for the life of the form plus 90 days. |
The matrix is intentionally short. If your DPO has more questions, the answer is almost always "yes, here is the page" rather than "let me check."
What GDPR actually requires - article by article
Most "GDPR-compliant" claims gloss over which articles they're talking about. Here are the five that govern a contact form, with the Formspring control that maps to each.
Art. 6 - Lawful basis for processing. Every processing operation needs one of six lawful bases. For contact forms it's almost always (a) consent or (b) contract necessity. Formspring lets you pick per form and records the choice on every submission, so your audit trail shows lawful basis at the row level rather than at the policy level. Full text: https://eur-lex.europa.eu/eli/reg/2016/679/oj.
Art. 13 - Transparency at collection. You must tell the data subject who you are, why you're processing, retention period, their rights, and how to contact your DPO - at the moment of collection. Formspring forms render a configurable transparency notice block above the submit button, with a link to your privacy policy. The notice is part of the form payload, so a screenshot at the time of submission is reproducible.
Art. 17 - Right to erasure. The data subject can ask you to delete their data, and you have one month. Formspring exposes a one-click erasure flow in the dashboard plus a public erasure endpoint that any data subject can use without going through your support team. Deletion is queued, cascades to file storage and integration destinations, and writes an audit-log row that you can show the regulator. Full text: https://gdpr-info.eu/art-17-gdpr/.
Art. 28 - Processor agreement. If anyone else processes personal data on your behalf, you need a contract with them that meets Art. 28's mandatory clauses. Formspring's DPA is built on the EDPB-approved template, includes Standard Contractual Clauses where required, and is pre-signed by us. You download it, counter-sign it, file it. No tickets, no legal review cycle. Full text: https://gdpr-info.eu/art-28-gdpr/.
Art. 32 - Security of processing. Appropriate technical and organisational measures. That's TLS 1.3 in transit, AES-256 at rest, access logging, regular pen-tests, principle of least privilege on operator accounts, encrypted off-site backups in the same EU region, and a published incident response process with a 72-hour breach notification commitment.
Implementation - three steps
The dashboard does the heavy lifting. The form itself is plain HTML with a consent field.
-
Create the form. New form in the dashboard, pick the GDPR contact template. EU-hosted storage is the default and cannot be toggled off on a per-form basis - the workspace's data residency is set at signup and is enforced at the infrastructure layer.
-
Add the consent field. Drop in the built-in
consentfield type. It renders a checkbox with your configurable consent text, marks the submission's lawful basis asconsent, and writes an audit-log row capturing timestamp, hashed IP, and the exact text shown. If you prefer contract necessity or legitimate interest, change the lawful basis dropdown and the consent field becomes optional. -
Set the retention policy. Per-form rule, default 30 days on Free. On paid plans you choose: 7 days, 30 days, 90 days, 1 year, or indefinite (with explicit acknowledgement that retention should match your published privacy policy). The deletion job runs nightly and writes an audit-log row when it fires.
That's it. No DPA addendum, no Schrems II transfer impact assessment, no fighting with a US vendor's EU-region toggle that might fall back to us-east-1 on failover.
Formspring vs the usual alternatives
The honest comparison. Each row picks the one thing a DPO will actually care about.
| Backend | Data residency | DPA status | Transfer mechanism |
|---|---|---|---|
| Formspring | EU-only (DE + FI), no replicas outside EEA | Pre-signed Art. 28 DPA on every paid plan | None - data never leaves the EEA |
| Google Forms (Workspace) | US Workspace defaults to US; EU storage available on Enterprise tiers; Workspace data has crossed the Atlantic historically | DPA available via Workspace terms | Standard Contractual Clauses + Data Privacy Framework certification |
| Typeform | Ireland data centre (AWS eu-west-1); responses may transit US-based services for analytics and ML features | DPA available | SCCs for any US-routed processing |
| US-hosted form backends (generic) | US primary storage | DPA usually available; quality varies | SCCs + DPF; Schrems II transfer impact assessment is on you |
The Typeform row is the one most teams under-estimate. Ireland storage doesn't mean Ireland-only processing - third-party analytics, ML features, and shared infrastructure can route response data through US-based services depending on plan tier. EU-only by infrastructure beats EU-default with carve-outs, every time a DPO reads the small print.
Schrems II and why US-only backends carry extra weight
The Court of Justice of the European Union invalidated the EU-US Privacy Shield in Schrems II (case C-311/18, July 2020): https://curia.europa.eu/juris/document/document.jsf?docid=228677. The ruling held that US surveillance law (FISA Section 702, Executive Order 12333) does not provide European data subjects with rights equivalent to those guaranteed by the GDPR, so transfers to US-based processors require additional safeguards - typically Standard Contractual Clauses plus a Transfer Impact Assessment documenting that the SCCs are actually effective in the specific case. In practice, that TIA is a document that has to be re-done whenever the underlying processor's architecture changes - and it's the controller (you), not the processor, who carries the regulatory risk if it's wrong.
The EU-US Data Privacy Framework (adequacy decision, July 2023) restored a transfer route for certified US recipients, but it's already facing legal challenges and the EDPB has signalled it will revisit it. The same Max Schrems-led complaint that took down Privacy Shield is the template for the case currently working its way toward the CJEU. A form backend whose primary data path crosses the Atlantic is a backend whose compliance posture depends on a contested legal mechanism that could be invalidated again, possibly on short notice, with no graceful migration path for the submissions already in storage.
Formspring's answer is simpler: the data doesn't cross the Atlantic in the first place. There's no transfer to assess, no SCC clause to enforce, no fallback adequacy decision to depend on, no TIA to maintain. For a contact form receiving European visitors' messages, "the data stays inside the EEA" is a structurally lower-risk position than "the data leaves but we have paperwork." Procurement teams who have lived through one Schrems-style invalidation tend to value the structural answer over the paperwork answer - because they remember what the paperwork answer looked like the morning after the ruling came down.
Who this is for, and who it is not
This page is written for the audiences most likely to need an out-of-the-box answer rather than a custom-built one:
- DPOs and compliance teams standing up forms on behalf of a marketing or growth team that needs an answer this quarter rather than next year.
- EU founders who want their stack to default to compliant rather than retrofitting it after the first sales-cycle questionnaire.
- Regulated industries - healthcare-adjacent, public sector, financial services, ed-tech - where the contact-form layer is one of many places that has to hold up to a Data Protection Impact Assessment.
- Agencies serving European clients who would rather use one EU-hosted backend across every client than negotiate a fresh DPA per project.
If you are a single-developer side project with no European visitors, the residency story is less load-bearing and a US-hosted backend will likely work fine. If you operate inside a regulated industry that mandates ISO 27001 or SOC 2 Type II at the form-backend layer, Formspring's certifications are on the security page and continue to grow - check before signing. The honest answer is that Formspring is the default for the audience above; for the long-tail outside it, the comparison page is the better starting point.