A quote-request form for builders, renovators and trades. It asks for the project, the hoped-for timeline and a budget bracket — the three answers that tell you in ten seconds whether this is a lead worth a site visit.
Opens the builder with this exact form loaded — press Finish there and your form gets its own address and page, with messages emailed to you.
⚠ As-is, this code has a placeholder address — messages
sent through it go nowhere. Use the button above to get a working
address (free), or point the form's action at your own
server.
<style>
.hf-form { display: grid; gap: 0.75rem; max-width: 28rem; font-family: system-ui, sans-serif; }
.hf-form label { font-weight: 600; font-size: 0.9rem; }
.hf-form input, .hf-form textarea, .hf-form select {
width: 100%; padding: 0.5rem 0.6rem; font: inherit;
border: 1px solid #ccc; border-radius: 6px; box-sizing: border-box;
}
.hf-form button {
justify-self: start; padding: 0.55rem 1.4rem; font: inherit; font-weight: 600;
background: #0b6e4f; color: #fff; border: none; border-radius: 6px; cursor: pointer;
}
.hf-hp { position: absolute; left: -9999px; }
</style>
<form class="hf-form" action="https://example.com/your-endpoint" method="POST">
<label for="name">Name</label>
<input type="text" id="name" name="name" required>
<label for="email">Email</label>
<input type="email" id="email" name="email" required>
<label for="phone">Phone</label>
<input type="tel" id="phone" name="phone" required>
<label for="type-of-project">Type of project</label>
<select id="type-of-project" name="type-of-project" required>
<option>Renovation</option>
<option>Extension</option>
<option>New build</option>
<option>Repair</option>
<option>Other</option>
</select>
<label for="when-would-you-like-it-done">When would you like it done?</label>
<select id="when-would-you-like-it-done" name="when-would-you-like-it-done">
<option>As soon as possible</option>
<option>Within 3 months</option>
<option>Within a year</option>
<option>Just planning</option>
</select>
<label for="budget-range">Budget range</label>
<select id="budget-range" name="budget-range">
<option>Under $5</option>
<option>000</option>
<option>$5</option>
<option>000–20</option>
<option>000</option>
<option>$20</option>
<option>000–50</option>
<option>000</option>
<option>Over $50</option>
<option>000</option>
<option>Not sure yet</option>
</select>
<label for="describe-the-project">Describe the project</label>
<textarea id="describe-the-project" name="describe-the-project" rows="5" required></textarea>
<!-- honeypot: humans never see this; bots fill it in. Drop submissions where it has a value. -->
<input class="hf-hp" type="text" name="website" tabindex="-1" autocomplete="off" aria-hidden="true">
<button type="submit">Request quote</button>
</form>
Adding it to your site? Step-by-step guides: WordPress, Shopify, Wix, Squarespace, Webflow or a static site.
People won’t type a number they’re unsure of, but they’ll pick a range. Brackets get you an answer where an empty box gets you nothing — and "Not sure yet" is still a signal.
Not through a purely static form — uploads need an endpoint that accepts files. Ask for photos in your reply email instead, or use a form service whose paid tiers support uploads.
Tentmaker Stores gives you a complete online store — product pages, checkout and everything in between. Built for small makers and niche sellers.