Table of Contents

How to Flatten Your Campaign Structure in Salesforce

Large enterprises with established data structures and budgetary guidelines may need a different approach than this recommendation. The following recommendation is for pre-IPO B2B SaaS organizations at a stage where their data and approach to analyzing that data are still somewhat malleable.

Why Flatten My Campaign Structure?

Many marketers use parent campaigns to organize their campaigns by business unit, region, or initiative, which makes a lot of sense. That "View Hierarchy" button in Salesforce makes it simple to visualize how your campaigns link together. The problem is that Salesforce (and most reporting solutions) have difficulty reproducing this view and summarizing data across multiple parent-child layers in reports.

When summarizing campaign data hierarchies, expect to be able to only group information by a single parent level. If some campaigns have three levels and others have four or five, you will get different results and repetitive data. (The exception to this are organizations that have built-in custom reporting layers to aggregate this information outside of their CRM.)

This article will cover B2B SaaS industry best practices for configuring your marketing automation system and CRM to get the most out of your campaign data.

What's the ideal way to organize Salesforce campaigns?

The best thing about any Salesforce platform on the market is the ability to customize it. Consider adding custom fields to the campaign object like:

  • Region
  • Business Unit
  • Product Line

If you have sweeping categories that are pretty consistent over time, it's a great candidate for a custom field. The best thing about using custom fields instead of a parent hierarchy is that you are much less limited regarding reporting flexibility. Even if you have a data warehouse to analyze your data, navigating levels takes a lot of processing power and customization. Mapping an additional field, on the other hand, is simple.

In Salesforce, grouping a report by several custom fields is simple, making it a great alternative to those embedded child campaigns.

Regarding tracking channel or advertising platform campaigns, we recommend not using your campaign object to track those interactions. Instead, we recommend stamping the UTM parameters your organization wants to track at both the person level (lead and contact) AND at the campaign member level.

flattened campaign structure in crm

We consider the campaign object as the CTA or action the person takes with your brand. We covered this in our article on campaign best practices. These are interactions like webinars, trade shows, form fills, etc.

We think of UTM parameters as "how they got to" the CTA or what they clicked on before interacting with your brand.

Marrying these two dimensions into a single touchpoint (the CTA is the campaign and the UTM parameters are custom fields on the Campaign Member record) allows for a great deal of flexibility in your reports.

Stamping your UTM values into custom fields on your campaign member records allow you to:

  • Flattening the campaign hierarchy for easier SFDC reporting
  • Retaining a running history of meaningful UTM interactions in Salesforce per person
  • Not needing to duplicate records or use history tracking to uncover a running UTM history

When does it make sense to use a parent campaign?

There are many valid reasons to add a parent layer. Perhaps you're working with a spend optimization tool that groups data differently.

Another fantastic use case is using parents for initiatives that span many different CTAs and channels. For example, if your organization's product has core functionality and your team wants to build an omni-channel set of campaigns to socialize the feature.

Another use case is tracking ABX programs in cohorted groups.

Parent campaigns are a fantastic way to allow your CMO to see summary data - as long as you keep in mind your CRM's inability to stack and summarize multiple parent layers as you're determining your strategy for parent campaign data.

Why not track ad platform data as a campaign? They're important.

UTM data is critical to track. Your digital advertising team needs visibility into how UTM data is linked to opportunity data in order to make the most of their campaigns. Digital marketing is a business-critical function, and marketers need a way to defend the way they spend the company's dollars.

The recommended campaign structure allows us to retain a granular record of UTM parameters while still allowing us to also pivot data to see things how the rest of the organization views marketing priorities. In other words, we think this method delivers what the business needs to know, including UTM cost efficiency.

We recommend focusing the campaign records on the CTA because a CTA is much more closely linked to how likely someone is to convert than the mechanism used to drive them to that form fill. For example, we know that demo requests will convert into opportunities at a rate of 25% or higher. Content downloads convert at rates closer to 1-4%. Regardless of what people click on, what they do with your brand is a better indicator of how likely they are to talk to sales.

By stamping UTM parameters on campaign member records, we keep a running history of UTM interactions as they tie to CTAs. That means we have a link between the ad and how likely someone is to convert or which CTA they are performing. This helps us add another layer to our UTM reports in a way our Salesforce (and other analytics tools) easily supports.

Can I use CaliberMind to push UTM data to my campaign members?

Check back soon. We're developing a solution that will allow us to leverage flows in CaliberMind to push UTM data linked to your CRM campaign members back into your source system.

Need additional support for putting this structure in place?

Here's how to capture and pass UTM information along from a leading MAS to Salesforce. Usually, this involves capturing the UTM parameters on the form fill and then creating a workflow to push that data onto the lead or contact object in Salesforce:

Don't see your platform here? Search for "how to capture UTM parameters on [platform name] form fills" and check out the videos or articles returned (however you prefer to consume!).

Here's how to flow that UTM data down to the campaign member in Salesforce.

How did we do?

How Do I Know If a Campaign Is Good or Bad?