Contact forms
Capture contact and enquiry submissions from a marketing site with a hosted endpoint, optional name fields, and no server-side mailer.
The problem
A contact form still needs a reliable endpoint, spam protection, and a clean handoff path — not just HTML inputs.
How Simple Signups fits
Use one campaign per inbox flow. Capture email + name, tag the source or page, then export or forward submissions into the rest of your stack.
When this is a good fit
- Simple contact, enquiry, or lead-capture forms on marketing sites.
- Static or framework sites that do not want a custom mailer route.
- Teams that want a thin front door before CRM or support tooling takes over.
When you probably need more than this
Not a fit alone for file uploads, multi-step applications, ticketing systems, or workflows that must immediately mutate private system state.
Working example
Swap in your public campaign id (pub_...) and add your site domain to the campaign allow-list. Full field reference is in the developer docs.
<p>Have a question or want to say hello? Leave your details and we will get back to you.</p><form action="https://simple-signups.com/api/subscribe" method="POST"> <input type="hidden" name="campaignId" value="pub_your_campaign_id" /> <input type="text" name="firstName" placeholder="First name" /> <input type="text" name="lastName" placeholder="Last name" /> <input type="email" name="email" required placeholder="you@example.com" /> <input type="hidden" name="tags" value="contact" /> <input type="text" name="hp" tabindex="-1" autocomplete="off" style="position:absolute;left:-9999px" aria-hidden="true" /> <button type="submit">Send message</button></form>await fetch('https://simple-signups.com/api/subscribe', { method: 'POST', headers: { 'content-type': 'application/json' }, body: JSON.stringify({ "campaignId": "pub_your_campaign_id", "email": "jane@example.com", "firstName": "Jane", "lastName": "Doe", "tags": [ "contact" ] }),});Related reading
- How to collect HTML form submissions without PHP — The general static-site pattern for receiving HTML form submissions without server-side mailers.
- Easiest backend for HTML forms: what to use and why — How to choose the smallest production-safe form backend for contact capture.
- Astro form submissions without an SSR adapter — A framework-specific example when the contact form lives on an Astro site.
Next step
Create a campaign in the dashboard, copy the public id, and paste the form above onto your site.