How to Create a Construction Bid Form in WordPress
Build a WordPress construction bid form that asks for the project type, location and stage before a consultation, with an automatic acknowledgement and a 3-step layout.
A construction bid form should tell you 3 things before anyone drives to a site: what kind of project it is, where it is and how far along the owner is. So, if you are looking to add a construction bid form or project inquiry form to your WordPress site, for a builder, a contractor or a fit-out firm, this guide can surely help.
I build Core Forms, and every screen here comes from its Construction project inquiry template running on a test site.
Every trade qualifies a lead differently, so one guide cannot cover every question a specialist might add. But almost every construction inquiry needs the same things, the project type, the location and the stage, and in this one I will try my best to cover those properly, in the 3-step layout the template ships with and on a single page.
The template ships with the plugin, so you can follow along click for click. Or, if you get stuck halfway, support is a message away. Without further ado, let’s get started.
What a Construction Bid Form Asks
The Construction project inquiry template collects 8 things across 3 steps:
- Your name and Email address are required, and Phone is optional.
- Project type is a required select: New build, Renovation, Extension or Commercial fit-out.
- Project location is required, because distance decides whether you bid at all.
- Current stage is a required select: Exploring options, Design ready, Permits in progress or Ready to start.
- Anything else we should know? is an optional text area with a 2,000 character limit.
- You may contact me about this request is a required consent checkbox on the last step.
The stage select is the field that earns this template its place. A homeowner exploring options and a developer with permits in hand are asking for very different amounts of your time, and the answer sorts them before you read a word of the message.
Create the Construction Bid Form
The industry templates ship in the multi-step layout only, so the search shows one card:
- Go to Core Forms > Add New.
- Type
constructionin the template search. - Click Use this template on the Construction project inquiry card.
The card notes that the admin notification and the confirmation email are already set up.
The builder opens with 3 steps: “Your details” holds name, email and phone, “Your request” holds the project fields and “Confirm” holds the consent checkbox and the submit button.
Click a step tab to see its fields. Drag a field onto another tab to move it.
The one field I would add is a Budget range select on the “Your request” step, with 4 or 5 bands that match the jobs you take. Click the + button, search for a select field, and give the options values you can route on later.
The 3-Step Layout
On the front end the visitor sees one step at a time, with a progress bar and the step names above the fields. Next checks the current step before the next one opens, so a request never arrives without an email address.
The project questions get a screen of their own, which reads better on a phone than 8 fields in a column.
The last step holds only the consent checkbox and the button. That is deliberate. The person has already typed everything, so the final screen asks for one click and nothing else.
Consent to be contacted is separate from any marketing list, and the template never subscribes anyone to one.
Collapse It to One Page
If your audience is mostly on desktop, or the form sits on a page that already explains your services, a single page can work better. In the builder, change Form layout from Multi-step to Single page and click Save fields. The step assignments are kept, so you can switch back at any time.
The fields keep their order: contact details, then the project questions, then consent.
The same form and the same actions, without the steps.
For a construction inquiry I would keep the 3 steps. A project owner is describing something worth tens of thousands, and a form that walks them through it feels more like an intake meeting than a contact box. The guide to when multi-step forms help and hurt has the general rule if you are unsure.
Two Emails Out of the Box
The template ships with 2 actions already configured:
- Send Email notifies the admin address with the subject “Construction project inquiry: [NAME]” and a Reply-To header set to the sender.
- Auto-Responder sends the visitor “Construction project inquiry - Request received,” with the same success text they saw on screen and an invitation to reply with more details.
Change the From name to your company name before publishing. The default is the site title.
The acknowledgement matters more in construction than most trades, because the owner has usually sent the same inquiry to 3 or 4 firms. The one that answers within a minute, even automatically, is the one they remember when the phone calls start.
Route by Project Type
Recipient routes in the Send Email action send commercial work to one estimator and residential work to another:
- Open the Actions tab and expand Send Email.
- Under Recipient routes, click + Add route.
- Set When field to Project type, Operator to equals, and the value to
commercial-fit-out. - Enter the commercial estimator’s address in Send to and click Save Changes.
The value is the stored option, commercial-fit-out, not the label people see. The first matching route wins and replaces the default recipient, and the feedback form guide shows the routes screen if you want to see it before you start.
The Settings the Template Turns On
The Settings tab for an industry template arrives with more switched on than a basic starter:
- Save submissions is on, so every inquiry is stored even if the email fails.
- Prevent duplicates is on, which stops a double-click from sending 2 inquiries.
- Rate limit is set to 10 submissions per IP per hour.
- Anti-spam shows the honeypot on.
A rate limit of 10 an hour is invisible to a real project owner and stops a script cold.
Payment is off, save and resume is off and the standalone form page is off. An inquiry form asks and acknowledges. It does not charge or reserve anything.
Publish the Construction Bid Form
The shortcode is shown next to the form’s name in the editor:
[cf_form slug="construction-inquiry"]
Paste it into your Request a quote or Start a project page, or use the Core Forms block. Put your service area right above the form, because a location field cannot stop someone 300 miles away from asking, and a line of text can.
Read the Inquiries
Every inquiry lands in the form’s Submissions tab, with project type, location and stage in their own columns.
Sort by the Stage column and the ready-to-start projects come first.
Click View to read the whole inquiry and answer from the Send Reply box on the same screen.
“Can you send the drawings?” is a 10-second reply from here, and it keeps the thread with the inquiry.
If leads go into a CRM, a HubSpot action or a Pipedrive action creates the contact and the deal from the same submission, with the project type and stage mapped to fields you can report on.
The Limits
The form does not take drawings. There is no file field in the template, on purpose, because a first inquiry should be quick. Add one if you want plans up front, and the file uploads feature covers the 8 MB limit and the file types that are allowed.
Location is a text field, not a map. “Brooklyn, NY” and “brooklyn” both arrive as typed, so sorting by service area is a reading job, not a filter.
Consent to be contacted is not marketing consent. The checkbox lets you reply about the project and nothing more, so a newsletter action on this form would need its own opt-in field.
There is no budget question in the template. The stage question does part of that job, and a budget select is the first field most firms add.
What Quietly Ruins a Construction Bid Form
Asking for the budget before the project. People will not name a number to a stranger, and a required budget field on the first step is where most of them leave.
Making the phone number required. Owners who are still exploring do not want a call yet, and the form tells you that through the stage field, so let the phone stay optional and ask for it when the project is real.
Adding a file upload to the first inquiry. Drawings are a second conversation. A required upload turns a 1-minute inquiry into a job the owner puts off until the weekend.
Sending every inquiry to one address. A commercial fit-out and a kitchen renovation should not wait in the same queue, and the route above takes 2 minutes to set.
Final Remarks
You now have a construction bid form that asks the 3 questions that qualify a project, walks the owner through them in 3 short steps, acknowledges the inquiry the moment it arrives and keeps every request in an inbox you can sort by stage. If you keep one idea from this guide, keep this one: the stage question is worth more than the budget question, so ask it first and ask the other one later.
The construction project inquiry template page has the fields and a live demo, and the guide to request a quote forms covers the shorter form that suits smaller jobs. If something here does not behave the way this guide describes, the support team can help. The other 15 industry forms are listed in the industry form templates guide.
I hope the next inquiry through it is a project you want.
FAQ
Can I add a file upload for drawings?
Yes. Add a file field on the “Your request” step in the builder. Uploads accept PDF, image and document files up to 8 MB per file by default.
Can the form send commercial and residential inquiries to different people?
Yes. Use recipient routes in the Send Email action on the Project type field, with one route per project type and a different address for each.
Does the form estimate a price?
No. It collects the inquiry. A calculated estimate needs a calculation field, and most builders prefer to quote after a site visit anyway.