In case of incorrect entries, the form has to be filled out completely again
You know how it is: You put a lot of effort into filling out a form, get an error message, and now have to start the whole procedure all over again. The next time you fill out the form, the fear level rises that the same thing could happen again. Does your form remember entries already made despite an error message?
Sometimes the user wants to check his input again and correct it if necessary. But often it is not even possible to get back there. Tip: Make it possible to navigate between the substeps of the form.
Unclear and much too long dropdown lists
Have you ever opened a dropdown list with all 194 recognized countries of the world – and had to select a country? Not knowing which spelling is used? It is true that dropdown lists should contain a maximum of 10 to 20 entries, otherwise the user simply loses the overview. The alternative is autocompleted fields, which suggest strings as the user types. Google has already made this technique state of the art.
A cryptic captcha input is requested
Common for many years and still annoying are unreadable captcha fields or math problems that are part of a form. This is to ensure that only humans and not programs (bots) submit form entries.
They are usually superfluous, because well-programmed forms are not an attractive target for bots and because well-programmed bots can crack captcha fields in no time.
As an alternative, the use of honeypots or fail2ban is recommended.
Honeypots are invisible fake form fields that bots mistakenly fill with content and are thus detected. fails2ban are programs that temporarily block IP numbers if they want to pass form data more than a few times per minute.
Thirdly, it is worth using a secure proxy such as Cloudflare. This keeps bots out in advance.