New in Dimension Mapping : Data Blending. You can now line up the same dimension (Channel, Strategy, Country…) across your ad platforms and your other data sources, so their metrics show up side by side, on the same rows, in your reports. Analytics and Adserver are now available.
What is Data Blending?
Dimension Mapping lets you extract values from your naming conventions into reusable dimensions. Until now, those rules only ever looked at your ad platforms (Ads).
Data Blending extends the same dimension to your other data models: Analytics, Ad server, and Measurement. You configure the same dimension on each of these tabs, using rules adapted to that source's own fields (UTMs for Analytics, campaign/placement names or IDs for Adserver). As long as two tabs produce the exact same output value for a given row, spyne lines those rows up together. Giving you one dimension that shows your media spend, your analytics sessions, and your ad server data side by side. Adserver metrics are always kept as their own set, separate from your media metrics, so nothing is ever double-counted even if a platform (e.g. Campaign Manager) is connected both as a media source and as an ad server.
Available modules
Dimension Mapping now works across four tabs, at the top of the Dimension Mapping page :
Ads: match the dimension against your media platforms' campaigns, ad groups or ads (TikTok, Meta, Google, Snapchat…). Ads dimension will still be available in data source "ads" in your reports.
Analytics: match the dimension against your analytics tool's UTMs (
utm_source,utm_campaign…). Analytics dimension will be available in data source "analytics" in your reports. Adserver dimension will be available in data source "blending" in your reports.Adserver: match the dimension against your adserver's campaigns, ad groups or ads (Campaign Manager, Adform), by name or by ID.
Measurement (IAS and other third-party measurement tools) match the dimensions against your measurer's campaigns, ad groups or ads, by name or by ID.
Blending kicks in once you configure the same dimension on two or more tabs: that's what makes it eligible to be viewed as a blended dimension in your reports (see “Seeing the blended view in your reports” below). Dimension crossing two or more tabs will be available in data source "blending" in your reports.
How rules work
Every rule starts the same way, whatever the tab: you first pick the source it applies to.
On the Ads tab: the media platform(s) the rule targets (TikTok, Meta, Google, Snapchat…).
On the Analytics tab: the analytics platform(s) the rule targets (GA4, Piano…).
On the Adserver tab: the adserver(s) the rule targets (Campaign Manager, Adform…).
On the Measurement tab: the measurer(s) the rule targets (IAS, XPLN)
From there, each rule is built the same way as in the base Dimension Mapping builder: an optional When condition tells spyne which rows the rule applies to, and a Then action tells spyne what value to output for those rows.
“When” fields available per tab
Tab | Available fields |
Ads | Channel (source name), Channel Group, Partner Name, Partner ID, Account Name, Account ID, Campaign Name, Campaign ID, Adgroup Name, Adgroup ID, Ad Name, Ad ID |
Analytics | Channel (source name), Account ID, Account Name, Session Source, UTM Source, UTM Source Platform, UTM Medium, UTM Campaign, UTM Content, UTM Term, UTM ID, Default Channel Group, Segment Name, Sub-segment Name |
Adserver | Channel (source name), Account Name, Account ID, Campaign Name, Campaign ID, Adgroup Name, Adgroup ID, Ad Name, Ad ID, Tag ID, Tag Name, Media, Site Directory |
Measurement | Channel (source name), Account Name, Account ID, Campaign Name, Campaign ID, DSP Campaign ID, DSP Campaign name, Adgroup Name, Adgroup ID, DSP Adgroup Name, DSP Adgroup ID, IAS Placement ID, XPLN Campaign ID, Ad Name, Ad ID, Media Partner ID, Media Partner Name, Exchange name |
To condition a rule on these fields, you use the same methods as the base Dimension Mapping builder: Field value, Split, Split length, Split aggregate, or Regex extract (see the Dimension Mapping article for details on each one).
“Then” : setting the dimension's value
Unlike When, Then isn't a fixed list of fields. It's where you tell spyne what value the dimension should take for the rows the rule applies to. You choose how to produce that value:
Text value: type the value directly (e.g.
META,Retargeting). Use this when you already know the exact label you want.
Field value: reuse one of the available fields as-is.
Split value: take the exact text found at a given position in the naming convention (e.g. splitting a campaign name by
_and taking the 4th segment, which happens to be the audience name). This copies whatever text is there rather than requiring you to already know it.
Split aggregate: combine a range of segments.
Regex extract: extract the value via a capture group.
Example — building a “Channel” dimension (Text value):
Ads tab - Source: Meta. When Channel is
Meta→ Then Text value:META
Analytics tab - Source: the UTM source(s) that correspond to Meta. When UTM Source is
meta→ Then Text value:META
Example — building a “Strategy” dimension (Text value):
Ads tab - When Campaign Name contains
RTG→ Then Text value:Retargeting
Analytics tab - When UTM Campaign contains
RTG→ Then Text value:Retargeting
Notice that on the Analytics tab, you're not required to isolate an exact segment of the UTM the way you would in Analytics Matching. A simple contains condition is enough. spyne doesn't need to know precisely where “RTG” sits in your UTM structure; it only needs the two tabs to agree on the final value (“Retargeting”).
Example — building an “Audience” dimension (Split value):
Ads tab - Sources are META, Tiktok, Snapchat → Then Split value: split Ad Group Name by
_, take segment 4 (wherever the audience name sits in your taxonomy).
Analytics tab - When UTM Sources contains Meta, Tiktok, Snapchat → Then Split value: split UTM Content by
_, take segment 4.
Here, neither side needs to type the audience name: as long as both point to the same position in an identical naming convention, they'll produce the same text and the rows will blend.
⚠️ The one rule that matters: outputs must match exactly. For two tabs to blend together, the value produced by a rule's Then block must be strictly identical between tabs : same spelling, same case, no extra spaces or accents. META and Meta (or META with a trailing space) will not be treated as the same bucket. If you're extracting raw text (Split value, Regex extract) rather than typing a fixed value, apply the same text modifiers (lowercase, trim, no accents) on every tab to keep outputs consistent.
Seeing the blended view in your reports
Building a dimension across tabs doesn't change your existing widgets by itself. To see the combined view, you need to query it through the Data Blending data source:
Create of click on the widget you want to configure (e.g. a Table or Pivot Table) in your report.
In the widget settings, set the Data source to Data Blending (instead of Ads or Analytics).
3. Pick your dimension (e.g. Channel) and select metrics (e.g. media spend, media impressions, session analytics, adserver impressions) you'll now see it broken down with the combined metrics from every tab you configured.
Building a single-source dimension
You don't need blending to use Dimension Mapping on Analytics, Adserver or Measurement. If all you need is one dimension built purely from your analytics UTMs or Adserver, with no equivalent needed on Ads, just configure that one tab:
Open the Analytics (or Adserver, measurement) tab.
Build your rules as usual: pick a source, add a When condition if needed, and a Then action for the output value.
Save it. Your dimension is now available under the data blending model.
This is exactly how single-source dimensions have always worked in Dimension Mapping. Blending is an option you add on top when you also want the same dimension to reflect another source, not a requirement to use the feature.
Adserver fields correspondence
Dimension (display name) | Campaign Manager 360 (champ brut) | Adform_v2 (champ brut) |
Channel (sourceName) | constante | constante |
Account Id / Account Name |
|
|
Campaign Id / Campaign Name |
|
|
Ad Group Id / Ad Group Name |
|
|
Ad Id / Ad Name |
|
|
Tag ID / Tag Name |
|
|
Media |
|
|
Site Directory |
|
|
Measurement fields correspondence
Dimension (display name) | IAS (champ brut) | XPLN_V2 (champ brut) |
Channel (sourceName) | constante | constante |
Account Id / Account Name |
|
|
Campaign Id / Campaign Name |
|
|
DSP Campaign ID / DSP Campaign Name |
|
|
Ad Group Id / Ad Group Name |
|
|
DSP Adgroup ID / DSP Adgroup Name |
|
|
IAS Placement ID |
|
|
Ad Id / Ad Name |
|
|
Media Partner ID / Media Partner Name |
|
|
Channel / Exchange Name |
|
|
XPLN Campaign ID |
|
|
Things to keep in mind
Blending is optional: Dimension Mapping V3 works perfectly well as a single-source builder on Ads, Analytics or Adserver alone.
Configure the same dimension on each tab you want to blend: Data Blending isn't a separate builder, it's the same dimension extended to more sources.
Output values must match exactly across tabs
This works at the dimension level, not the row level: Data Blending groups data into the buckets your rules define, rather than reconciling individual clicks to individual sessions.
Nothing changes for dimensions you don't extend: If you only ever configure one tab, your dimension behaves exactly as it always has.















