HTML registration form
- Form controls the markup will hold
- 8
- Label elements, one bound to each control
- 8
- Fieldset and legend pairs around the choice groups
- 1
The counts these tools work out come from the structure the HTML standard defines for a form: one labelled control per field, a fieldset and a legend around a group of radios or checkboxes, and a name attribute on every control that is meant to be submitted. The sources under each tool link the part of the specification each rule comes from.
A registration form asks for more than a contact form and has to be stricter about all of it, because what it collects becomes an account. The markup is still plain HTML: text inputs for the name, an email input, a password input with autocomplete set so password managers behave, and a checkbox for whatever the person has to agree to. The difference is that every one of those constraints is a hint to the browser and a promise to nobody, so the same checks have to exist again on the other end.
Open the HTML form generator Free to use. No account, no card, no trial clock.
Ask for what the account genuinely needs, and nothing else
Every field on a registration form is a thing you are then responsible for holding, and a reason for somebody to abandon the page. Name, email address and password is a complete registration form for most sites. Anything past that should be earning its place: you can always ask later, inside the account, when the person has a reason to answer. Fields you cannot justify are the ones that turn into a data problem eighteen months from now.
Set the types and the autocomplete hints
type="email" makes the browser check the shape of the address and shows the right keyboard on a phone. type="password" hides the value. The attribute people leave out is autocomplete: name, email and new-password tell a password manager what each field is for, so it offers a generated password rather than filling in the one from another site. This is a two minute change that decides whether the form works with the tools people actually use.
Treat the browser's validation as a courtesy, then check again
required, minlength and pattern give somebody an instant answer without a round trip, and that is genuinely worth having. None of it is a control, because the browser belongs to the person filling in the form and a script can post whatever it likes straight to your action URL. Every rule you care about has to exist a second time wherever the submission lands. On the worked example, the six named values the form carries are six things the receiving end has to validate for itself.
Will the HTML registration form write the markup you need?
Tell us what the form has to do and we will tell you whether Endpointo can catch it.
Writing the HTML registration form: what developers ask
Which input type should the password field be? type="password", with autocomplete="new-password" on a registration form. That tells password managers to offer a generated password rather than filling the one the person uses on another site, and it stops browsers autofilling the field with a value nobody intended to submit.
Can I use pattern to enforce password rules? You can, and it will give instant feedback, but treat it as a courtesy rather than a rule. pattern is a browser check on a form the browser owns, so anything actually enforcing your rules has to run where the submission lands.
Should the consent checkbox be required? If the account genuinely cannot be created without that agreement, yes, and mark it required so the browser says so before the person waits for a round trip. Do not pre-tick it: a checked-by-default consent box is not a choice, and it will be read as one.
Endpointo Pro
Where the submission goes next
The markup is only half a working form. Point its action at Endpointo and the posts start arriving in your inbox, with every submission and its uploads kept in one place you can search and export.
- Download the files somebody uploaded with the form
- Send notification emails without our name on them
- Come back to a form and its submissions tomorrow
- Put your own logo and reply-to address on the notifications
- Export every submission a form has ever received
- Send the notification email to more than one address
- Connect Stripe when a form needs to take a payment
- Push submissions into the tools you already run
$19per month, whole team
Start Endpointo Pro PricingEndpointo Pro is $19.00 per month. It renews automatically each month at the same price until you cancel, and the price and the renewal date are shown on the checkout page before you pay.