A while ago I made this graphic that summarizes my thoughts on the one program per landing page technique:
![0EM50000000QE9U.jpg 0EM50000000QE9U.jpg](/t5/image/serverpage/image-id/3611i90BE07396BD5F926/image-size/large?v=v2&px=999)
I can see this method being useful in some business models, but we choose to tag each program with a unique URL and track the program's performance regardless of which Web form is completed. It looks something like this:
![0EM50000000QE9Z.jpg 0EM50000000QE9Z.jpg](/t5/image/serverpage/image-id/3617i110F04E931BD1BAE/image-size/large?v=v2&px=999)
So if I had three different lead gen emails, they would be built as three different programs and the links in each of those emails would have a unique tag to help Marketo identify program responses. Those emails could all point to the same landing page or different landing pages - it wouldn't matter.
If I need to show how those three emails relate to an over-arching campaign, I group them together in Marketo with folder structures and in SalesForce with a field on the campaign object called "Parent Campaign" that would relate them to a common campaign.
This is what works for us, but ultimately it depends on your goals and the reports you need in the end. I hope this was helpful!