I'm a fan of using separate programs to track this. For each advertising vehicle (we call them "tactics"), I'll setup a separate program. We actually created a unique channel for these tactic programs. The statuses aren't terribly important, we just use a single success status, and each of those programs has a smart campaign that looks for conversions. The trigger typically looks something like this:
Smart List: Fills out Form trigger
Web page = www.landingpage.com
Querystring CONTAINS utm_source=linkedin&utm_medium=cpc&utm_campaign=linkedinads
Flow Step: Change Program Status
Program = Webinar Program - LinkedIn Ads
New Status = Converted
We also created a custom object in our CRM (Salesforce.com) where we can build the master campaign, and we then create parent-child relationships between each of the tactic campaigns and the master campaign. This way, our program owners have one place in Salesforce where they can check on the success of each tactic.
Hope that makes sense. A few screenshots below.