How to qualify leads from your website without scaring good ones off
Qualifying website leads is mostly a matter of asking two or three well-chosen questions and then acting on the answers consistently. The form gathers facts; a simple rule you wrote decides the tier; and each tier gets a different reply. Here's how to set that up, where Anticode's forms fit, and which parts live in your sheet or CRM.
Pick questions that actually separate fits
Start from your last twenty enquiries. Which ones became good clients, and what did they have in common? Usually it's two or three things: the kind of job, the size or budget band, and timing. Those are your questions. Anything else you'd like to know can wait for the first conversation.
| Question | Why it qualifies | Format |
|---|---|---|
| What do you need help with? | Filters out services you don't offer | A short list of your services plus Other |
| Roughly what budget have you set aside? | Separates small fixes from projects | Bands, never an open box |
| When do you need it done? | Tells you who to call first | This month, next three months, just exploring |
Bands matter. People skip an empty budget box, but most will tick a range, and ranges are easier to score. Include a lowest band honestly labelled, so small enquiries still tell you who they are instead of leaving.
Building the form in Anticode
There are two routes, and the difference is the fields. On a site laid out by Anticode's design engine, the contact form's fields are fixed: name, email and a message. You can still qualify with it by putting the questions in the text above the form ("Tell us the service, your budget band and your timing"), but answers arrive as free text you'll have to read. The other page option is a custom form tied to a site function: up to 30 plain-text fields, stored and sent to your connectors like any other submission, with the function's heading and message shown on the visitor's thank-you page.
For choices laid out as buttons or dropdowns, build the form as an app: describe it ("an enquiry form with service, budget band and timing as choices") and the model writes it as an interactive page. Its enquiries reach you through the same form pipeline as a page's, saved in the dashboard, sealed at rest, and emailed to you if you choose. The trade-off is that an app is written by the model, so it needs an account and counts against your build allowance.
Score with a rule you own
- Send each enquiry onward. Use a connector: Google Sheets (through a small Apps Script web app), Airtable, Notion, or HubSpot, which receives submissions that include an email address.
- Write the rule down. For example: a service you offer and a budget at or above your floor is A; a service you offer with a smaller budget or a far-off date is B; everything else is C. Three tiers are enough.
- Apply it where the data lands. A formula column in the sheet, or a property and view in your CRM, so the tier appears without anyone deciding by mood.
- For logic on the server, use a site function. Anticode can make a signed HTTPS call to an endpoint you control on each form post, so your own code can score and route the lead. Anticode never runs your code itself; it sends the post and signs it so your endpoint can check it came from your site. A simpler formula function can score numeric answers (a budget figure, say), but formulas work on numbers only, not text. A function can be tied to a custom form or attached to the built-in contact, booking or newsletter form; an app's forms send through those built-in forms, so a function attached there runs for them too, though whether the app shows its message depends on the app, so ask for it and test it.
Reply to each tier differently
- Tier A
- A personal reply the same working day, offering two call times. Speed matters most here.
- Tier B
- A reply within a couple of days with your process, typical prices or a link to your pricing page, and an invitation to book when they're ready.
- Tier C
- A short, polite note pointing to a better-suited option or a self-serve resource. Being helpful costs little and they may come back.
These replies are yours to send from your email or CRM. Anticode emails the enquiry to you, not a response to the person who wrote it.
What goes wrong
- Too many questions. Each one costs enquiries. If a question doesn't change the tier, drop it.
- A connector fails quietly. Each submission is sent to a connector once, without retries. The dashboard keeps every enquiry, so check it weekly against the sheet.
- The rule drifts. Someone starts upgrading favourite leads by hand. Review the rule every quarter against which leads actually became clients, and change it on purpose.
How you know it worked
A-tier leads get a reply the same day, every time. The share of first calls that end in a proposal goes up, because fewer of them were never a fit. And you can explain any lead's tier by pointing at the rule. For the routing side of this, see routing contact form enquiries; for what happens next, following up website leads.
Limits
- Fixed fields on the built-in forms. Extra questions need a custom form with a site function (plain-text fields) or an app build.
- No built-in scoring or CRM. Tiers live in your sheet, CRM or your own endpoint.
- No automatic replies to the visitor. Send them from your own tools.
- No file uploads. If you need briefs or drawings, ask for them in your reply.
Questions people ask
Will asking about budget put people off?
An open box can. A short list of bands, including a modest lowest band, rarely does, and it saves both sides a call that was never going to work.
Can Anticode send leads straight to HubSpot?
Yes. The HubSpot connector receives submissions that include an email address. Scoring and follow-up then happen in HubSpot.
How to qualify leads from your website if you only have a contact form?
Put the two or three questions in the text above the form and ask people to answer them in the message. It's less tidy than separate fields, but it works, and you can move to a custom form or an app-built form later.