First time marketing ops person here, trying to resolve a debate we are facing as we begin our Marketo implementation.
For Contacts that exist in the CRM already who fill out a form (ex: webinar), are imported via list (ex: post-event), or reach a score threshold (ex: website engagement) - would you create a Lead for that person, or simply work from the Contact?
We are primarily trying to meet the needs of our Business Development and Demand Generation teams, primarily to:
Marketo does not work on the lead/contact objects independently; instead they realize both combined into the "person" module in Marketo (formerly known as Leads, but to the same extent that they were actually BOTH Leads and Contacts).
Secondly, Marketo's default dedupe functionality is based on email address, so unless you're looking to circumvent this with intentional duplicates, that would be another hurdle to jump over.
All of your goals are achievable. Whether through lifecycle modeling & date/time stamps; scoring campaigns & triggers, etc.
I've worked with a company that did this (B2C), where they create a duplicate lead upon re-engagement and once qualified, the SDR merges it into the contact upon conversion. I personally don't like duplicate leads when you have an existing contact. However, this is dependent on what works for your business ie. your sales process and martech stack
My current company has a cyclical customer lifecycle model where we have made clear what triggers a re-MQL (filling out a form again is one trigger but that's not the only thing). We work off the one record and don't create duplicates. And this works for us, but the above example worked for the B2C company as well.
There's no correct answer, either could be successful, but to make it successful is a combination of marketing and sales alignment, training and, of course, good operational set up and processes
When maintaining the single record (Contact in this case) how do you:
We use marketo smart campaigns to identify if it's a re-engagement or net new lead (lead to account matching is on the roadmap but we don't have that yet). If net new lead - lead is assigned to SDR queue. If re-engagement, an email alert that goes out the current sales owner.
To track progress, in a simple sense, we use tasks with specific subject lines (because marketo creates the task, you can listen for when the task is closed/completed) (Unfortunately our Account Execs don't tend to close out the tasks and so there are challenges there but SDRs are much better at this).
We don't measure response times but we do have SLA dashboards that tell us the number of tasks that exceed SLAs (1 business day). I'm sure you can have a custom task field to record the hours/days it took for the task to close, you'd have to create some workflows and field update rules and might be able to do it with a formula field but you can definitely stamp the field with what you want using Apex.
On tracking campaign success, to me, the example you gave is closer to funnel metrics and this is something you set up completely separately (it's a big project). For us, campaign "success" reporting, in terms of pipeline generated, is separate to funnel metrics and we don't do this very well, but this might be because we're a long sales cycle B2B org and unless you have a successful multi-touch attribution model, it's sub-optimal to attribute all pipeline/revenue to a single campaign.