Connections and Hierarchy
Connections define the relationships between nodes on your Campaign Builder canvas. Understanding how nodes connect and what hierarchy rules apply helps you build valid campaign structures that publish successfully to platforms.- How parent-child connections work
- Hierarchy rules you must follow
- What happens when you reconnect nodes
- Validation constraints for connections
Campaign Hierarchy Structure
All advertising platforms use a three-tier hierarchy. Your canvas connections must follow this structure:Hierarchy Levels
Level 1: Campaign Nodes- Top-level containers with no parents
- Can have multiple ad set children
- Define objective, budget, and platform
- Cannot connect to other campaigns
- Middle-tier nodes with one or more campaign parents (multiple parents allowed only when all parents share the same objective and same portal/account)
- Can have multiple ad children
- Define targeting, placements, and schedule
- Inherit optimization goals from parent campaign(s)
- Bottom-tier nodes with exactly one ad set parent
- Cannot have children
- Define creative content and messaging
- Inherit targeting from parent ad set
Connection Rules
Valid Connections
These connection patterns are allowed: Campaign to Ad Set- One campaign can connect to multiple ad sets
- An ad set can connect to one campaign or to multiple campaigns only when all those campaigns share the same objective and the same portal (account)
- All parent campaigns connected to the same ad set must have the same objective and same portal
- One ad set can connect to multiple ads
- Each ad must connect to exactly one ad set
- No restrictions on number of ads per ad set
- Campaigns can have many ad sets
- Ad sets can have many ads
- No platform-imposed limits on child count
Invalid Connections
These connection patterns are not allowed: Circular Connections- Nodes cannot connect back to themselves
- Nodes cannot connect to their ancestors
- No loops in the connection graph
- Campaigns cannot connect to ads directly
- Ads cannot connect to campaigns directly
- Must follow the three-tier hierarchy
- Ad set with multiple campaigns: Allowed only when every parent campaign has the same objective and the same portal (ad account). Otherwise invalid.
- Ads: Cannot connect to multiple ad sets; each ad has exactly one ad set parent.
- Campaigns have no parent; ad sets and ads have one or more parents only under the rule above.
- Ad sets must have a campaign parent
- Ads must have an ad set parent
- Only campaigns can exist without parents
Creating Connections
Automatic Connections
When you use the node creation buttons, connections are created automatically:Manual Connections
You can also create connections manually by dragging:- Hover over a node to see connection points
- Click and drag from a connection point
- Drop on a valid target node
- Connection line appears if the connection is valid
Reconnecting Nodes
Reconnecting means changing a node’s parent connection. This is useful when reorganizing campaign structures, but it has important implications for publishing.How to Reconnect
Reconnection Behavior on Publish
When you reconnect a node and publish, the behavior depends on whether the node has an existing platform ID: New Nodes (No Platform ID)- Reconnecting before first publish: No special behavior
- Node creates under the new parent when published
- No duplication occurs
- Reconnecting after publish: Creates a duplicate
- Original entity remains under original parent on platform
- New entity is created under new parent on platform
- Both entities exist after publishing
Why Duplication Happens
Advertising platforms don’t allow moving entities between parents. For example:- Meta: Cannot move an ad set from Campaign A to Campaign B
- TikTok: Cannot move an ad group between campaigns
- Snapchat: Cannot move an ad squad between campaigns
- Google: Cannot move an ad group between campaigns
Avoiding Unintended Duplication
If you don’t want duplication, use these alternatives: Option 1: Edit the Original- Keep the node under its original parent
- Edit its properties to match your needs
- Publish to update the existing entity
- Copy the node you want to duplicate
- Paste under the new parent
- Edit as needed and publish
- This makes duplication intentional and clear
- Create a new node under the desired parent
- Configure it with the same settings
- Publish to create a new entity
- Delete the original if no longer needed
Objective Compatibility
Ad sets inherit optimization goals from their parent campaigns. This creates an important validation rule:Single Campaign Parent
When an ad set connects to one campaign, it inherits that campaign’s objective. No validation issues occur.Multiple Campaign Parents: When It’s Valid vs Invalid
One ad set under two (or more) campaigns is allowed only when both conditions are met:- Same objective — All parent campaigns have the same objective (e.g. all Sales, or all Traffic).
- Same portal — All parent campaigns use the same portal (ad account).
What This Means for Your Workflow
Valid: Same objective + same portal- Create multiple campaigns with the same objective (e.g. all Sales) and the same portal (same ad account).
- Create one ad set node and connect all those campaigns to it.
- When you publish, the ad set is created under each campaign; all instances have compatible goals and account.
- Different objectives (e.g. Sales + Traffic) connected to one ad set → validation fails.
- Same objective but different portals (different ad accounts) connected to one ad set → invalid; use one ad set per portal or reconnect so the ad set has only one parent per portal.
- Before connecting, ensure all parent campaigns have the same objective and the same portal.
- Only then connect them to one ad set; otherwise use separate ad sets or fix objective/portal first.
Deleting Connections and Nodes
Deleting Connections
To delete a connection without deleting nodes:- Click the connection line to select it
- Press Delete or right-click and choose Delete
- Child node becomes orphaned (shows validation error)
- Reconnect to a valid parent or delete the orphaned node
Deleting Nodes with Children
When you delete a parent node, all its children are also deleted: Delete Campaign- Deletes the campaign node
- Deletes all connected ad sets
- Deletes all ads under those ad sets
- Entire subtree is removed
- Deletes the ad set node
- Deletes all connected ads
- Parent campaign remains
- Deletes only the ad node
- Parent ad set and campaign remain
Connection Validation
Whathead validates connections in real-time and before publishing:Real-Time Validation
As you work on the canvas, connections are validated immediately:- Green checkmark: Node and its connections are valid
- Red warning icon: Node has connection or configuration errors
- Hover over icon: See detailed validation messages
Pre-Publish Validation
Before publishing, Whathead performs comprehensive validation: Connection Structure- All ad sets have exactly one campaign parent
- All ads have exactly one ad set parent
- No circular connections exist
- No orphaned nodes exist
- All campaigns connected to the same ad set have compatible objectives
- Ad set optimization goals don’t conflict
- Platform-specific objective rules are satisfied
- Connections follow platform-specific rules
- Required fields are filled for all nodes
- Budget minimums are met
- Creative specifications are satisfied
Platform-Specific Connection Rules
Different platforms have different names for the middle tier, but the connection rules are the same:- Meta
- TikTok
- Snapchat
- Google
- Campaign → Ad Set → Ad
- Ad sets must connect to exactly one campaign
- Ads must connect to exactly one ad set
- Cannot move ad sets or ads between parents
- Reconnecting creates duplicates
- Campaign Budget Optimization (CBO) affects budget distribution across ad sets
- Special Ad Categories may restrict targeting at ad set level
Visual Connection Indicators
The canvas uses visual cues to show connection status: Connection Lines- Solid line: Valid connection
- Dashed line: Selected connection
- Red line: Invalid connection (validation error)
- Animated line: Connection being created
- Blue dot: Available connection point
- Green dot: Valid drop target
- Red dot: Invalid drop target
- Solid border: Node has valid connections
- Dashed border: Node is selected
- Red border: Node has connection errors
Best Practices
Building New Structures- Use automatic connections (+ buttons) for speed and accuracy
- Build top-down: campaign first, then ad sets, then ads
- Validate as you go rather than waiting until publish
- Understand reconnection creates duplicates for existing nodes
- Use copy/paste when you want intentional duplication
- Use undo (Ctrl+Z) if you reconnect accidentally
- Group campaigns by objective before connecting to ad sets
- Create separate ad sets for different objective groups
- Check objective compatibility before publishing
- Don’t skip hierarchy levels
- Don’t create orphaned nodes
- Don’t connect campaigns with different objectives to the same ad set
- Don’t delete parents without considering children
Next Steps
Node Types
Canvas Operations
Publishing Workflow
Reconnect Scenarios
Common Questions
Can I connect one ad to multiple ad sets?
Can I connect one ad to multiple ad sets?
What happens if I reconnect an ad to a different ad set after publishing?
What happens if I reconnect an ad to a different ad set after publishing?
Can I create multiple campaigns and connect them all to one ad set?
Can I create multiple campaigns and connect them all to one ad set?
How do I move an ad set from one campaign to another without creating a duplicate?
How do I move an ad set from one campaign to another without creating a duplicate?
What happens if I delete a campaign that has ad sets and ads?
What happens if I delete a campaign that has ad sets and ads?
Can I connect an ad directly to a campaign, skipping the ad set level?
Can I connect an ad directly to a campaign, skipping the ad set level?
Why does my ad set show a validation error after I disconnected it?
Why does my ad set show a validation error after I disconnected it?
Can I create a connection between two campaigns?
Can I create a connection between two campaigns?
What's the difference between reconnecting and copy/paste?
What's the difference between reconnecting and copy/paste?
How many ad sets can I connect to one campaign?
How many ad sets can I connect to one campaign?