Generate a free HTML contact form for your website. Copy-paste ready code with spam filtering and email notifications — no signup or server required.
<form action="🔥🔥🔥 CHANGE THIS 🔥🔥🔥" method="POST" class="formbackend-form">
<div class="formbackend-field">
<label for="name">Your name</label>
<input type="name" id="name" name="name" placeholder="John Doe" required="true">
</div>
<div class="formbackend-field">
<label for="email">Your email</label>
<input type="email" id="email" name="email" placeholder="johndoe@example.com" required="true">
</div>
<div class="formbackend-field">
<label for="message">Your message</label>
<textarea id="message" name="message" placeholder="Your message..." required="true"></textarea>
</div>
<div class="formbackend-field">
<button type="submit">Send</button>
</div>
</form>
<style>
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500&display=swap');
.formbackend-form { width: 100%; max-width: 400px; font-family: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; font-size: 14px; font-weight: 400; color: #111827; line-height: 24px; background: #ffffff; }
.formbackend-form .formbackend-field:not(:first-child) { margin-top: 16px; }
.formbackend-form label { display: block; font-weight: 500; color: #374151; margin-bottom: 4px; }
.formbackend-form textarea, .formbackend-form input, .formbackend-form select { width: 100%; border: 1px solid #d1d5db; border-radius: 6px; box-sizing: border-box; display: block; font-family: inherit; font-size: 14px; padding: 10px 12px; background: #ffffff; color: #111827; }
.formbackend-form textarea { min-height: 100px; }
.formbackend-form input[type='checkbox'] { width: 15px; height: 15px; margin: 0 8px 0 0; display: inline-block; }
.formbackend-form .form-checkbox { display: flex; align-items: center; }
.formbackend-form ::placeholder { color: #9ca3af; opacity: 1; }
.formbackend-form button { background-color: #111827; color: #ffffff; border: none; border-radius: 6px; cursor: pointer; padding: 10px 20px; font-weight: 500; font-family: inherit; font-size: 14px; }
.formbackend-form button:hover { opacity: 0.9; }
</style>
<form action="🔥🔥🔥 CHANGE THIS 🔥🔥🔥" method="POST" class="formbackend-form">
<div class="formbackend-field">
<label for="name">Your name</label>
<input type="name" id="name" name="name" placeholder="John Doe" required="true">
</div>
<div class="formbackend-field">
<label for="email">Your email</label>
<input type="email" id="email" name="email" placeholder="johndoe@example.com" required="true">
</div>
<div class="formbackend-field">
<label for="message">Your message</label>
<textarea id="message" name="message" placeholder="Your message..." required="true"></textarea>
</div>
<div class="formbackend-field">
<button type="submit">Send</button>
</div>
</form>
<style>
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500&display=swap');
.formbackend-form { width: 100%; max-width: 400px; font-family: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; font-size: 14px; font-weight: 400; color: #111827; line-height: 24px; background: #ffffff; }
.formbackend-form .formbackend-field:not(:first-child) { margin-top: 16px; }
.formbackend-form label { display: block; font-weight: 500; color: #374151; margin-bottom: 4px; }
.formbackend-form textarea, .formbackend-form input, .formbackend-form select { width: 100%; border: 1px solid #d1d5db; border-radius: 6px; box-sizing: border-box; display: block; font-family: inherit; font-size: 14px; padding: 10px 12px; background: #ffffff; color: #111827; }
.formbackend-form textarea { min-height: 100px; }
.formbackend-form input[type='checkbox'] { width: 15px; height: 15px; margin: 0 8px 0 0; display: inline-block; }
.formbackend-form .form-checkbox { display: flex; align-items: center; }
.formbackend-form ::placeholder { color: #9ca3af; opacity: 1; }
.formbackend-form button { background-color: #111827; color: #ffffff; border: none; border-radius: 6px; cursor: pointer; padding: 10px 20px; font-weight: 500; font-family: inherit; font-size: 14px; }
.formbackend-form button:hover { opacity: 0.9; }
</style>
A contact form is one of the most important elements on any website. It gives visitors a direct way to reach you without exposing your email address to spam bots. This generator creates a clean HTML contact form with fields for name, email, and message — ready to paste into your site.
The generated contact form uses semantic HTML with properly associated labels and inputs for accessibility. The included CSS is scoped so it won't conflict with your existing styles. Connect the form to a FormBackend endpoint and you'll receive every submission by email, or view them in your dashboard.
Need a different kind of form? This is one of several form types you can build with our free HTML form generator — start there to compare contact, survey, booking, registration, and order form templates in one place.
Yes. The generated code is standard HTML, so you can add any input, textarea, select, or checkbox field you need after copying the code.
FormBackend includes built-in spam filtering. You can also add a honeypot field or integrate a CAPTCHA service to further reduce unwanted submissions.
Yes. The form is pure HTML and CSS with no JavaScript dependencies. It submits data using a standard form POST request.
Collect information from attendees to an event or party.
Create a survey form to gather feedback from your customers.
Create a booking form to manage appointments and bookings.
Create a newsletter form to collect email addresses.
Create a registration form to let users sign up for your event, workshop etc.
Create a contact form, to collect name, email and a message for a specific department
Create a support form, to collect name, email and a message
Collect product orders with quantities, shipping details, and notes.
Accept job or program applications with experience and cover letter fields.
Generate a free HTML contact form for your website. Copy-paste ready code with spam filtering and email notifications — no signup or server required.