What should a lead form ask for?
Ask for what you need to make the first call, and collect the rest on that call. Name and mobile number cover most businesses. Email can stay optional, because plenty of people who will happily take your call never check theirs.
Each of these four examples adds one field at most, and only where that field changes what you'd say when you ring.
| Business | Fields | Button text |
|---|---|---|
| Shop or local service | Name, mobile | Call me back |
| Coaching class | Name, mobile, course | Get batch timings |
| Event or seminar | Name, mobile, email | Reserve my seat |
| Agency or consultant | Name, mobile, website | Request a callback |
What makes people finish the form?
Say what happens next, right beside the button. "We'll call within one working day" answers the worry that a form is a hole your details fall into. Only write that if you can keep it.
On a phone, a number field with inputmode="numeric" opens the keypad straight away, and most Indian visitors will be on a phone. Accept +91, 0 and spaces. A form that rejects 098765 43210 is punishing someone for typing their own number the normal way.
Add a line about how you'll use the number, and link your privacy policy. A separate tick box helps if you plan to send marketing messages later, though we'd ask a lawyer about the exact wording for your business.
Where should a lead form's submissions go?
Email is the default, and it works until about the fiftieth enquiry. After that you can't count them, search them, or tell that Tuesday's Rahul is last month's Rahul. We compare the options in our guide to form-to-email.
Free code for a working lead form
Paste this into any HTML page. It saves each submission as a contact in the Miaalo source that owns the key, and repeat enquiries join the existing contact.
<form id="enquiry">
<input name="name" required placeholder="Your name">
<input name="phone" required inputmode="numeric" placeholder="10-digit mobile number">
<input name="email" type="email" placeholder="Email (optional)">
<button>Send enquiry</button>
</form>
<p id="result" role="status"></p>
<script>
document.getElementById("enquiry").addEventListener("submit", async (e) => {
e.preventDefault();
const body = Object.fromEntries(new FormData(e.target));
body.api_key = "YOUR_SOURCE_KEY";
const res = await fetch("https://miaalo.com/api/save-number", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify(body)
}).then((r) => r.json());
document.getElementById("result").textContent =
res.status === 1 ? "Thanks. We will call you soon." : res.data.message;
});
</script>
The source key can only add contacts, so it's safe in browser code. Miaalo accepts Indian mobile numbers only, and API access is switched on by request through info@fairshare.tech. Field details are in the form API docs.