How to export GA4 attribution paths to CSV, step by step
Check your attribution settings, then open Advertising and the attribution paths report. Select only purchase and a custom date range that ended two weeks ago. Leave path length unfiltered, then click Share this report, Download File and Download CSV.
By Joris van Huët, Founder & CEOUpdated 7 min read
Run the numbers for your store: the free attribution window calculator.
Usually eight checks and one download. Check your attribution settings, then open Advertising and the attribution paths report. Select purchase only and a custom date range that ended two weeks ago. Leave path length alone, then click Share this report, Download File and Download CSV. Check the file's totals before you trust it.
Step by step
- Check the attribution settings. In Admin, under Data display, click Events, then Attribution settings. Note the reporting attribution model and the key event lookback window: both shape the credit in your file. For purchases the lookback defaults to 90 days, with 30 or 60 days as options; changing it takes the Marketer role or above.
- Open the report. Click Advertising on the left in GA4, then Key event attribution paths under the Key events drop-down. Its table lists each path with Key events, Purchase revenue, Days to key event and Touchpoints to key event. The credit in each row is an average across the individual paths in that row.
- Select purchase, and only purchase. GA4 ticks every key event in the top-left drop-down and adds them together, so untick all but purchase. Check for filters too: anything added with Add filter at the top left narrows the users in your file. If purchase is missing, mark it as a key event first: without a key event, there is no path to show.
- Set a long, settled date range. Select the date picker in the top right and choose a custom range on the calendar. End it at least two weeks before today, because GA4 can change attribution credit for up to 12 days after a key event. The report holds data from June 14, 2021 onwards, so go back as far as your tracking was stable.
- Keep the dimension on Primary channel group. The table splits paths by channel group by default, and its drop-downs switch to Source, Medium or Campaign. Channel group keeps the file readable; Source or Medium helps you check one platform's tagging, at the price of a longer file. Campaign over a long range can push rows into (Other), which GA4 uses when it hits cardinality limits.
- Leave path length unfiltered. The report displays all paths up to 20 touchpoints long. Its path length filter takes an operator, a number of touchpoints and Apply. Use it only when you want one length on purpose.
- Download the CSV. Click Share this report in the top right, then Download File, then Download CSV. The file holds up to 100,000 rows and lands in your Downloads folder. Export to Google Sheets carries the same row cap, while Download PDF gives you a picture, not data you can sort.
- Check the file against the screen. Add up Key events and Purchase revenue in the CSV and compare them with the report's top row. If they differ by more than rounding, a filter or a key event choice changed between the two.
A worked example
For illustration, here are five invented rows from an attribution paths CSV, with round revenue.
| Path (invented) | Touchpoints to key event | Purchase revenue |
|---|---|---|
| Direct | 1 | €400 |
| Organic Search | 1 | €100 |
| Organic Search > Direct | 2 | €150 |
| Paid Social > Paid Search > Direct | 3 | €200 |
| Email > Organic Search > Paid Search > Email | 4 | €150 |
Sort by Touchpoints to key event. Then add up Purchase revenue in four buckets: one touch, two or three, four to nine, and ten or more. In this worked example, one-touch rows hold €500 of €1,000, or 50%. In the same worked example, two or three touches hold €350, or 35%, and the four-touch row holds the last 15%. The check is easy in a worked example: 50% plus 35% plus 15% is 100%, so nothing fell out. Days to key event needs one extra step. Weight each row's days by its Key events before you average a bucket, or one odd path will skew it.
The buckets show how much revenue rides on journeys long enough for attribution to matter. A one-touch path has nobody to share credit with, so every model gives it the same answer. The argument between models happens in the longer buckets.
One store's export carries the same four buckets on its Journeys sheet. On the Journeys sheet, journeys with 1 touch hold 79.5% of revenue, and journeys of ten or more touches hold 3.0%. The rows carry time too: journeys of four to nine touches took 16.9 days to buy, on the same Journeys sheet. Hold that next to your lookback window from step 1. If your buyers take longer than the window, their earliest touchpoints lose credit.
What should I check when the export looks wrong?
There is no Share this report button. GA4 will not share or download a report while you are customizing it. Save your changes, then open the report again from the left menu.
You cannot export at all. Google's help says you need the Viewer role at the property level to share or export a report. Ask whoever runs your GA4 property to check your role.
Rows say (not set), Unassigned or Unattributable. These are GA4's stand-in values. (not set) means GA4 received no value for the dimension, such as a tagged link missing its source. Unassigned means no channel rule matched the event. Unattributable means GA4 could not assign credit for the dimension you picked.
The chart and the table disagree. They answer different questions. The chart shows credit under the Paid and organic channels last click model unless you switch it, while the table lists the paths themselves. Switching the chart's model changes how credit is split, not which paths happened.
First click or linear is missing. Google retired the first click, linear, time decay and position-based models in November 2023. The chart's model drop-down will not offer them, so plan your analysis without them.
Revenue does not match Shopify. Expect a gap, because the two systems collect revenue in different ways. Why GA4 and Shopify show different revenue walks through the usual suspects.
Your other reports changed dates. That is GA4 carrying your new range across reports. Other users will not see your change, so nobody else's view moved.
Yesterday's file and today's disagree. Google says data processing can take 24 to 48 hours, and attribution credit can change for up to 12 days. Re-export once the range has settled, and keep the settled file.
What to do this week
- Export three settled months of paths, purchase only. Use a custom range that ended two weeks ago and steps 1 to 7 above. Pass: a CSV sits in your Downloads folder with one key event selected. Fail: a PDF, or a file with every key event mixed in.
- Bucket the file by Touchpoints to key event. Use the four buckets from the worked example and sum Purchase revenue in each. Pass: the buckets add up to the report's top-row Purchase revenue. Fail: they fall short, so a filter or a missing row is eating revenue.
- Write the settings into the file name. Include the date range, key event, attribution model and lookback window. Pass: anyone can rebuild the same file next quarter. Fail: nobody remembers which settings made it, you included.
Check the homework. Your GA4 Attribution paths export already holds the evidence. Causality Engine reads that one file and shows what each channel caused next to what last-click gave it, in 1 to 2 minutes, for €99 once (excluding VAT), refundable within 30 days. Check the homework
Sources, 1 October 2026: Key events attribution paths report (Google); Share & export reports (Google); Change and compare date ranges in reports (Google); Select attribution settings (Google); Data freshness (Google).
Related answers
Frequently asked questions
What role do I need to export a GA4 report?
The Viewer role at the property level, according to Google's help. If the share option is still missing, you are probably customizing the report: save it, then open it again from the left menu.How many touchpoints does the GA4 attribution paths report show?
All paths up to 20 touchpoints long, per Google's help page for the report. Leave the path length filter empty for the full set, or use it to study one length, such as single-touch paths.Can I export attribution paths by campaign instead of channel?
Yes. Switch the table's dimension drop-down from Primary channel group to Campaign before you download. Over long ranges, watch for an (Other) row: GA4 groups rows into it when it hits cardinality limits.
Go deeper: Causal attribution, explained.
Sixty-second versions of these ideas: Causality Engine on YouTube Shorts.
Keep reading
Terms in this article
- AnalyticsAnalytics is the systematic computational analysis of data. It reveals customer behavior and measures campaign performance.
- AttributionAttribution identifies user actions that contribute to a desired outcome and assigns value to each. It reveals which marketing touchpoints drive conversions.
- Attribution ModelAn Attribution Model defines how credit for conversions is assigned to marketing touchpoints. It dictates how marketing channels receive credit for sales.
- Causal AttributionCausal Attribution uses causal inference to determine which marketing touchpoints genuinely cause conversions, not just correlate with them.
- CausalityCausality is the relationship where one event directly causes another, essential for identifying specific actions that drive desired outcomes in marketing.
- RevenueRevenue is the total income generated by the sale of goods or services related to a company's primary operations.
- ShopifyShopify is an ecommerce platform for creating online stores and selling products. Attribution modeling shows which marketing channels drive traffic and conversions within Shopify.
- TouchpointTouchpoint is any interaction a customer has with a brand throughout their journey. In marketing attribution, each touchpoint is a data signal to understand marketing impact.