MuxForms contact forms are get-in-touch pages that POST to a hosted backend instead of theme SMTP or per-site API routes. Embed on WordPress, Next.js, or static HTML, allow your origin, and read every message in one inbox with email alerts.
Use case
Contact pages fail quietly: theme SMTP, spam folders, a different plugin per domain. MuxForms is one embed and one inbox.
| Item | MuxForms |
|---|---|
| Typical fields | name, email, message |
| Delivery | Inbox + email |
| Multi-site | One account |
| Price | $9/month |
The contact page is the highest-trust form on your site—and the one most often wired with PHP mail, stale SMTP plugins, or a Route Handler nobody owns.
MuxForms gives you a schema (name, email, message), CORS allowlists per form, honeypot and rate limits, and a searchable inbox with email notify on your sending domain.
Embed on WordPress via Custom HTML, on Next.js via a client wrapper + embed.js, or POST JSON from mobile with the same form id so support is not guessing which channel the user used.
Unlimited forms on Pro and Team means every client domain gets its own form id without a new vendor contract.
Create a form named Website — Contact with these fields, then paste the embed on your page. Allow each site origin; point notify email at sales@ or hello@.
| Field | Type | Required |
|---|---|---|
| Namename | text | Yes |
| Emailemail | Yes | |
| Messagemessage | textarea | Yes |
| Leave blank_hphidden | text | No |
Illustrative preview—wire your form id after signup.
{
"name": "Website — Contact",
"fields": [
{
"name": "name",
"label": "Name",
"type": "text",
"required": true,
"placeholder": "Jane Doe"
},
{
"name": "email",
"label": "Email",
"type": "email",
"required": true,
"placeholder": "you@company.com"
},
{
"name": "message",
"label": "Message",
"type": "textarea",
"required": true,
"placeholder": "How can we help?"
}
]
}<div data-form-id="FORM_UUID"></div> <script src="https://www.muxforms.com/embed.js" defer></script>
Then clone the pattern for the next site or app.
Upgrade to Pro