Campaign Hierarchy

When to use a campaign hierarchy:

Use campaign hierarchy if you want to track statistics about a group of campaigns.

Open Example

My organization is running a series of webinars.  We would like to have a snapshot view of how each webinar within the series is performing individually, as well as the series as a whole.

In this scenario, I would create a parent campaign for the series, and a child campaign for each individual webinar held:

12-22-2012 9-51-00 AM

How to configure campaign hierarchy:

1. Configure field-level security.  

Campaign hierarchy fields may be set to hidden field-level security by default.  Ensure that the proper profiles have access by changing the visibility to each field (if required):

Setup –> Customize –> Campaigns –> Fields

Click on the field (e.g. “Total Actual Cost in Hierarchy”).

Click “Set Field-Level Security”.

Set the field to visible for the appropriate profiles.

Repeat for each field you would like to use:

Total Actual Cost in Hierarchy
Total Budgeted Cost in Hierarchy
Total Contacts in Hierarchy
Total Converted Leads in Hierarchy
Total Expected Revenue in Hierarchy
Total Leads in Hierarchy
Total Num Sent in Hierarchy
Total Opportunities in Hierarchy
Total Responses in Hierarchy
Total Value Opportunities in Hierarchy
Total Value Won Opportunities in Hierarchy
Total Won Opportunities in Hierarchy

2.  Add fields to the appropriate campaign page layout(s).

Now that the campaign hierarchy fields are visible, add them to appropriate page layout(s).

Note: You may want to consider using record types when implementing a campaign hierarchy.  Using a “Parent” and “Child” record type and associated page layouts can allow you to display the relevant fields on the corresponding layout (e.g. display the “Parent Campaign” field on child campaigns only, and display campaign summary fields on parent campaigns only).

3. Populate the parent campaign field on child campaign records.

I’ve populated several campaign records, and can now view the campaign hierarchy statistics on the parent campaign:

Limitations of Campaign Hierarchies:

You can have up to 5 levels in your campaign hierarchy.  There is no limit to the number of campaigns within the hierarchy itself, however.

24 Responses to “Campaign Hierarchy”

  1. jeta514 August 15, 2017 at 3:36 pm #

    If you wanted to filter the parent campaign field look up to only return “parent campaigns” how would you suggest doing this? Based on the record type perhaps? And if so, how would you filter the lookup criteria? I’m a bit stuck… thanks!

    • JohnCoppedge August 15, 2017 at 5:52 pm #

      Good question. So you can’t add a lookup filter to the standard field b/c you can’t modify standard fields.

      Instead what you could do is create a second field (e.g. custom field called parent campaign) that is a look up to campaign. Then use process builder to copy the value from that field to the standard “parent campaign” field. Set visibility on the standard parent campaign to not visible and/or remove it from the page layout.

      • jeta514 August 15, 2017 at 6:57 pm #

        Thank you for that suggestion, I’ll give that a try!

        Also, FYI I was able to modify the STD parent campaign field lookup filter. (this is what I used and it’s working: Parent Campaign: Parent Campaign ID EQUALS ) I can’t modify anything else on the field, like the name, data type, etc. but I was able to update the look up filter criteria. Thanks again!!

        • JohnCoppedge August 15, 2017 at 7:03 pm #

          You sure can! Wow it’s been a while since I modified a standard lookup field – great that SFDC lets you add filters now… please disregard my workaround idea 🙂

  2. sandy April 8, 2017 at 11:29 pm #

    Hi John,I saw in campaign detailed page under campaign planning num sent field what its mean?

  3. CarlosSiqueira June 13, 2016 at 1:15 pm #

    I asked the same question on the Salesforce Success Community and the presenter asked me why would I need a record type for these. I just asked because of your suggestion of using record type/page layout, but couldn’t think of a real case where it would be needed.

    • JohnCoppedge June 13, 2016 at 2:39 pm #

      It would be so that you could hide the summary fields on a child campaign, where these fields would be null

  4. CarlosSiqueira June 9, 2016 at 8:45 pm #


    Still related to record types for Parent and Children.
    What if Campaign is both a Parent and a Child?

    For example:
    Honda creates a “Summer Specials” Campaign (Parent) with 3 children campaigns:
    MotorCycle Campaign:
    Sport Bikes Campaign
    Motocross Campaign
    JetSki Campaign:
    One passenger
    Two passengers
    Generators Campaign:
    1000 Watts
    2000 Watts
    3000 Watts

    How does record type handles this?


    • JohnCoppedge June 13, 2016 at 1:06 pm #

      It would be up to you to set up your record types / page layouts accordingly. I would likely apply the ‘parent’ layout to all campaigns that had children (including the middle ones).

  5. johnnychuk April 26, 2016 at 10:11 pm #

    Hi, John. Do you know how to enable campaign hierarchy statistics? I can’t find out how to do this. (See p 10 of I set up an umbrella campaign to contain many child campaigns. I see all the child campaigns on the campaign hierarchy section of the umbrella campaign page, but the child campaigns aren’t showing up on campaign reports like I think they should. Am I doing something wrong?

    • CarlosSiqueira June 9, 2016 at 8:30 pm #

      On your page layout, I believe you need to add a related list “Campaign Hierarchy” and follow these instructions that John provided about to enable the fields to visible (Campaign records, reports):

      How to configure campaign hierarchy:

      1. Configure field-level security.

      Campaign hierarchy fields may be set to hidden field-level security by default. Ensure that the proper profiles have access by changing the visibility to each field (if required):

      Setup –> Customize –> Campaigns –> Fields

      Click on the field (e.g. “Total Actual Cost in Hierarchy”).

      Click “Set Field-Level Security”.

      Set the field to visible for the appropriate profiles.

  6. Rudy Ornelas June 5, 2015 at 10:48 pm #

    Hi John,

    You mentioned on how we might want to use record types for Campaign Hierarchy. I’m not getting how using record types when using campaign hierarchy would work. If a Salesforce user has the record type of “Parent Campaign” then they will see Parent Campaign
    field on child campaigns only. Wether, I’m looking at a Child Campaign or Parent campaign the field is in the same place. I’ve get the general notion around record types, but I must admit its omen of my weaknesses.

    I must admit though, I’ve learned so much in since I purchased your training. The investment is well worth it!

    • JohnCoppedge June 11, 2015 at 12:15 am #

      You need to create a second page layout to coincide with the record types.

      Imagine you open a parent campaign:
      -there is no “parent campaign” field listed
      -there is a related list that displays the child campaigns
      -there are campaign rollup summary fields displayed

      Image you open a child campaign:
      -there is a “parent campaign” field displayed
      -there is no related list to display child campaigns or rollups fields

      What this requires:
      2 record types (parent campaign, child campaign)
      2 page layouts (parent campaign, child campaign)
      map the page layout to the corresponding record type

      Sounds like you may need a second page layout. Hope that helps, and glad you are enjoying the site!

  7. Dale Thomas April 19, 2015 at 8:28 pm #

    Hi John, I think this page needs updated. “Campaign hierarchy fields are set to hidden field-level security by default. ” In my Dev org these are all set to read by default.

    • JohnCoppedge May 1, 2015 at 11:12 pm #

      Updated, thanks

    • CarlosSiqueira June 9, 2016 at 8:23 pm #

      I just found that out the hard way after watching the videos and seeing the fields on the page layout but not on the campaign.

  8. Frank Verrill August 13, 2014 at 4:54 pm #


    If you were going to nest your campaign hierarchy would you need to create several record types and summary values at each rollup level or would you just rollup to the 1 parent?

    • JohnCoppedge August 19, 2014 at 3:49 pm #

      It would probably depend on requirements. I haven’t built a really complex campaign hierarchy myself. In my scenario, I created one record type for parent campaigns and a second for child campaigns.

  9. Louis Burgis May 15, 2014 at 9:36 pm #

    What is the difference between the limit of 5 levels vs unlimited number of campaigns allowed?

    • JohnCoppedge May 16, 2014 at 7:14 pm #

      You can have as many siblings as you’d like in the campaign family tree- but only 5 generations (great-great-grandfather, but not a great-great-great grandfather)

      • Gautam Kasukhela February 4, 2016 at 7:52 am #

        Hello John,

        I think it will be worth mentioning the below point under ‘Limitations of Campaign Hierarchies” :

        You can have up to 5 levels in our campaign hierarchy but the campaign hierarchy related list shows a maximum of 2 hierarchy levels (parent and child campaigns). If a child campaign has children, those children do not appear in the related list but their data is included in the campaign hierarchy statistic field values.


        • JohnCoppedge February 6, 2016 at 12:21 am #

          Yes, that is a good point. However, that is also the case for all parent/child relationships in Salesforce…

        • MohindrooShivani April 26, 2016 at 8:34 am #

          hello, did u already went trough the admin certification exam? can u guide me

Leave a Reply