I generally steer clear of the iframe implementation of Marketo forms, as it tends to be messy when you want to do tracking like this later (for the parent URL issue you specify). Ordinarily I’d say to either use Marketo landing pages for this, or use the more flexible form integrations into non Marketo pages (great info on these different types in the “
Advanced Forms: The Ins and Outs” session at the summit, slides to be posted in the next few weeks)
I've organized my PPC and display advertising a few different ways based on trial and error. For a time, I had everything in one program, and then I branched out to having separate programs for separate PPC campaigns or display partners. A lot of it depends on the granularity of tracking you desire. If you go with separate programs for individual ads, you'll be able to associate conversions and revenue much more easily to an individual ad unit, but the tradeoff is increased complexity in your Marketo instance, and potentially for your sales team, who instead of having a couple of campaign codes to remember, now have a whole slew of codes to keep track of.
I found the approach that worked best for me (so far) is to have a separate program for each advertising type or partner. So I have one for AdWords, one for AdCenter, and one for each of my display and retargeting platforms. In each of those, I use manually tagged URLs using UTM parameters (a pain if you have a huge campaign with a lot of ads, I know), and using cookies to capture the URL variables and populate them into hidden fields once a form is submitted (
guide to doing this here).
Then, on the reporting end, I have less than 10 campaign codes I’m looking at, and if I need to see detailed comparisons, I can simply sort by the various UTM variable fields (aka if I wanted to compare sales performance of a leaderboard vs skyscraper display ad, or keyword a vs keyword B). You could do this in salesforce reports, or even within the revenue cycle explorer reports.
Hope this helps!