The most common way to do this is to capture the lead source data (like the fact a lead came from Paid Search, Organic Search, Paid Social, etc) with each form submission and thens end it into InfusionSoft with each new lead.
What tool do you use to power the forms on your website? InfusionSoft forms or something else?
Some form tools have some basic functionality built-in (like the ability to capture UTM parameters), or there are tools (like Attributer.io) that you can use. They’ll automatically automatically capturing attribution data (UTMs, referrer, landing page, etc.) when someone first visits your site, categorise them into lead sources (like Organic Search, Paid Search, Paid Social, etc) and then write them into hidden fields on your forms. Then, when the form is submitted, the lead source information flows directly into Infusionsoft with each new lead.
You could also probably write custom JavaScript to capture the data, store it and pass it through yourself, but that would require hiring a developer, maintaining the code, updating it as to work with new browsers, devices, etc.