The first thing would be to make sure the HS tracking code is installed on the page where the form lives.
Then, when the contact fills out the form by reaching the page with a tracking URL, these properties outlined in this article will automatically be filled out with the relevant information and the URL the contact clicked to reach the page with the form would be recorded.
Adding additional parameters as properties it's possible at the using HubSpot regular forms and adding these additional parameters as hidden fields. You can find detailed instructions here.
An idea to create multi-steps form has been posted before, you can upvote and follow it here.