# Blend data sources in Looker Studio (up to five tables)

> Join up to five data sources with left, inner, full and cross joins. Avoid inflated metrics and collapsed rows.

Source: https://mentionx.ai/learn/looker-studio/looker-studio-blending-data-sources  
Author: Dipuck Jones, founder of MentionX  
Updated: 5 November 2026  
Level: Practitioner

**Blending lets one chart read several data sources at once. Google documents a maximum of five tables per blend, five join operators (inner, left outer, right outer, full outer, cross), and equality-only join conditions. Blends are powerful for putting Google Ads spend beside GA4 revenue or Sheets targets. They are also the fastest way to invent fake ROAS if you join on the wrong key. This lesson shows how blends work, how to pick a join, and how to spot inflated numbers before leadership sees them.**

> **Key takeaways**
>
> - Cap is **five tables** per blend; blends live inside the report.
> - Tables are **aggregated before join** on the dimensions you include — missing a unique key collapses rows.
> - Metrics from sources become **unaggregated numeric dimensions** in the blend; re-aggregate in charts carefully.
> - Prefer **left outer** with Ads or GA4 as the left table for marketing scorecards.
> - Data-source calculated fields **cannot** feed blends; use chart-level formulas.

*Checked 5 November 2026 (CET) against Google Cloud Data Studio documentation, the Data Studio product page, the Looker Studio-is-Data-Studio blog post, connector help pages and the Analytics Help pages cited in Sources. Google renames and moves features often, so confirm labels and limits in your own account. "Our view" marks MentionX opinion. Ledgerline is a fictional company used for illustration.*

## How a blend actually works

Google's "How blends work" documentation is required reading. In plain language:

1. You pick up to five tables (each from a data source).
2. For each table you choose dimensions and metrics to include.
3. Data Studio **groups each table** by its dimensions before joining.
4. A join configuration links tables with an operator and equality conditions.
5. Charts query the blend like a data source, but freshness and credentials still come from the underlying sources.

Because of step 3, if you join Ads and GA4 only on Date and leave Campaign out of one side, multiple campaigns collapse. If you join on Campaign Name with inconsistent naming, rows disappear in an inner join or null-out in an outer join.

## Join operators for marketers

| Operator | Keeps | Marketing use | Risk |
|---|---|---|---|
| Left outer | All left rows + matches from right | Ads spend left, GA4 results right | Right-side fan-out can inflate left metrics if keys are not unique |
| Inner | Matches only | Comparing only fully matched campaigns | Drops new campaigns missing on one side |
| Right outer | All right rows | Rare; usually swap tables and use left | Confusing to maintain |
| Full outer | All rows from both | Reconciliation / finding mismatches | Lots of nulls; needs IFNULL |
| Cross | Every combination | Almost never for KPI dashboards | Exploding row counts |

## Step-by-step: Ads spend + GA4 key events by date

1. Add a Google Ads table with Date, Cost, Conversions (or your chosen conversion).
2. Add a GA4 table with Date, Key events, Sessions.
3. Join on Date = Date with **left outer**, Ads on the left if spend completeness matters most.
4. Include only Date as the dimension in each table for a daily scorecard (no Campaign yet).
5. In the chart, SUM Cost and SUM Key events. Create a chart-level `Cost per key event`.
6. Add a note: "Joined on date only. Not campaign-level attribution."

For campaign-level blends you need a shared key. Campaign name often differs between Ads and GA4 UTMs. Many teams join on a cleaned key in Sheets instead. See [lesson 12](https://mentionx.ai/learn/looker-studio/looker-studio-cross-channel-roi-blend).

## Date ranges and filters inside the blend

Each table can have its own date range and filters applied **before** the join. Use that to exclude brand campaigns on the Ads side while leaving GA4 intact, or to limit GA4 to a country. Freshness for the blend is the **minimum** of member freshness.

## Hide repeated join fields

Leave **Hide repeated join fields** on unless you are debugging mismatches. Otherwise you will see `Date (Ads)` and `Date (GA4)` cluttering the field list.

## Inflated metrics checklist

When a blended ROAS looks "too good":

1. Check join operator (accidental cross join?).
2. Check key cardinality (one GA4 date-campaign to many Ads rows?).
3. Check whether you summed a metric that was already a daily total after a fan-out.
4. Compare each side's totals in separate non-blended charts for the same range.
5. Rebuild with date-only first, then add dimensions one at a time.

## Worked example: Ledgerline

*Ledgerline is a fictional accounts-payable software company. Details are illustrative.*

| Blend | Tables | Join | Result check |
|---|---|---|---|
| Daily efficiency | Ads + GA4 | Date, left outer | Ads cost matched GA4 UI within 2% (illustrative) |
| Campaign attempt v1 | Ads + GA4 on Campaign name | Inner | Lost 18% of spend (illustrative) to name mismatch |
| Campaign v2 | Both to Sheets map of campaign_id | Left outer | Stable |

### Walkthrough

1. The first leadership blend used campaign name and quietly dropped Performance Max variants.
2. Ops compared blended Cost to a pure Ads scorecard and saw the gap.
3. They switched to date-level efficiency for the exec page and kept campaign joins on a mapped Sheet.
4. Chart-level CPA replaced a data-source field that would not work on the blend.
5. The report note stated the join grain in one sentence.

> **Pro move:** always place two "control" scorecards outside the blend — pure Ads Cost and pure GA4 Key events. If the blend's sums disagree, stop publishing.

## Aggregation-before-join worked example

Suppose Ads has two rows on 1 Nov for Campaign X and Y ($100 and $50). GA4 has one row for 1 Nov with 40 key events.

- If you join only on Date and include Campaign on the Ads side but not GA4, GA4's 40 may fan out across campaigns depending on how you configure dimensions — validate with control scorecards.
- Safer pattern for daily efficiency: **both tables at Date grain only** on the exec blend; campaign joins live on a separate diagnostic page with a mapping Sheet.

## Mapping Sheet pattern for campaign joins

| ads_campaign_id | ga4_campaign | clean_name |
|---|---|---|
| 111 | utm_campaign_a | Brand Search |
| 222 | utm_campaign_b | Competitor |

Blend Ads → map → GA4 on the clean key. Name mismatches become visible as nulls instead of silent drops in an inner join.

## When not to blend

- You only need to show two scorecards side by side (no row alignment) — use two charts, not a blend.
- The join key is unreliable this month — fix tracking first.
- You are about to add a sixth table — remodel in BigQuery instead.

## Common mistakes

- **Joining on Display Campaign Name across platforms without a map.**
- **Cross join by accident.**
- **Expecting a blend to be reusable** like a data source.
- **Using data-source calculated fields on blend charts.**
- **Five-table blends that nobody can debug.**

## Try it yourself

Blend Ads and GA4 on Date only. Compare SUM(Cost) on the blend to SUM(Cost) on a pure Ads chart for last 28 days. If they differ by more than a rounding error, fix the blend before adding dimensions.

## Quick quiz

**1. What is the maximum number of tables in a blend?**

*Answer:* Five.

**2. Are join conditions only equality?**

*Answer:* Yes. Data Studio does not support ≠, > or < join conditions.

**3. Why might rows collapse before the join?**

*Answer:* Each table is grouped by its selected dimensions; without a unique key, identical dimension sets merge.

## What should you check before the next lesson?

- One working date-level blend with control scorecards.
- Join grain written on the page.
- Chart-level rate metric, not a broken data-source field.

Previous: [Parameters, filters and controls in Looker Studio](https://mentionx.ai/learn/looker-studio/looker-studio-parameters-filters-controls). Next: [Themes, layouts and branding for Looker Studio reports](https://mentionx.ai/learn/looker-studio/looker-studio-themes-layouts-branding). Or return to the [Looker Studio for Marketers track](https://mentionx.ai/learn/looker-studio/looker-studio-for-marketers). Related: [GA4 Search Console Google Ads links](https://mentionx.ai/learn/ga4/ga4-search-console-google-ads-links), [Google Ads for Marketers](https://mentionx.ai/learn/google-ads/google-ads-for-marketers), [Calculating ROI of GEO](https://mentionx.ai/learn/measurement/calculating-roi-of-geo).

## Common questions

**How many data sources can I blend?** Up to five tables in one blend. Blends are embedded in the report and cannot be reused as standalone data sources across reports, though copying the report copies the blend.

**Which join types does Data Studio support?** Inner, left outer, right outer, full outer and cross join. Join conditions support equality only.

**Why are my blended metrics too high?** Usually a join fan-out: one row on the left matched many on the right, or metrics were aggregated incorrectly after the join. Fix join keys and prefer aggregating in each table before joining.
## Sources

- Google Cloud, [How blends work in Data Studio](https://docs.cloud.google.com/data-studio/how-blends-work)
- Google Cloud, [About calculated fields](https://docs.cloud.google.com/data-studio/about-calculated-fields)
- Google Cloud, [Manage data freshness](https://cloud.google.com/looker/docs/studio/manage-data-freshness)
- All accessed 5 Nov 2026.

## Frequently asked questions

### How many data sources can I blend?

Up to five tables in one blend. Blends are embedded in the report and cannot be reused as standalone data sources across reports, though copying the report copies the blend.

### Which join types does Data Studio support?

Inner, left outer, right outer, full outer and cross join. Join conditions support equality only.

### Why are my blended metrics too high?

Usually a join fan-out: one row on the left matched many on the right, or metrics were aggregated incorrectly after the join. Fix join keys and prefer aggregating in each table before joining.

---

Written and reviewed by Dipuck Jones for MentionX Learn. The HTML version of this page: https://mentionx.ai/learn/looker-studio/looker-studio-blending-data-sources
