Forms are the main tool through which you have a conversation with your users. If you fail at them, you fail to have a good conversation with your users
In practice this means :
Sorry we had to say this one out loud but yeah, it seems like it is not always a well understood concept in some isolated regions of the internet.
Once you've grouped them in logical block, try to see if you can split them.
Until you get to a number of steps where each step is a breeze and people do not get crazy when they see your form.
Side note regarding the progress bar : progress bar are great without a doubt when it comes to trace your origin. However the benefit is less obvious when it comes to describe the future steps.
Sometime it can be intimidating to know how many steps you still have to go. So in some cases, you will prefer to use only breadcrumbs logic while building your progress bar - just to avoid your users to freak out when they see your form has 15 steps...
Extra bonus for : conditional logic in wizard
It is now common knowledge but nonetheless, you still see plenty of forms in the wild with a crazy amouts of fields that could totally be reduce to a bare minimum.
If you need data for extra convincing check these:
The fields, the radio buttons, etc.
Avoid multicolumn, unless there is some logical bound between two fields, like name and familly name, or date of birth has day, month, year fields... but for the rest, just stay away from multicolumn.
Where to put labels have always been a matter of debate.
But consensus has been built over the years that Top Left labels seems to be the best
For sure, disparearing lable inline are really bad (I have used these a lot, but honestly, unless you have a single email form on a landing page, it does not make any sense to use disapearing inline field.)
So are supporting Infield top left, which is basically top left label but inside the field, check the reference for a detail description of this option.
Also, always display a field label. Even if it seems obvious - just write the label anyway.
Dropdown require extra user action to reveal all the options of the form.
So it is not scan-friendly.
And we know users like to scan quickly information, right?
So, using Radio Button makes more sense. Unless of course, for country list or for any kind of list where the logic doesn't require opening the list to understand what's in there.
This is part of the user experience too and it helps build trust.
Moreover, with the GDPR law and the global lack of confidence in tech, it is a good thing you just be upfront about it, and give people a reason to trust you.
Use auto complete for