LAST UPDATED: 29 July 2020, with important fixes to two Filters: Source: and Medium: Etsy referrals

POP QUIZ: Can Google Analytics answer this question?

“How do people find my Etsy store?”

At first, Google Analytics looks like it has all the answers! There in your reports, you see: direct traffic, referrals, a few from Facebook and other social media… Isn’t that how they got there?

ANSWER: Nope! Not unless you follow the instructions in this guide.

Google “etsy traffic sources” and you’ll find this little Help article from Etsy. In that article it says this:

“Google Analytics shows how people found Etsy.”

So, what’s the difference?

Well, that means that any of the traffic sources you see in Google Analytics could show how that person found the Etsy home page or an entirely different shop before they navigated to yours within Etsy. Half your so-called social media traffic could be from other people’s marketing! (And not in a good way…)

Even worse, Google Analytics doesn’t show you how people found your shop within Etsy, which makes up the bulk of your traffic. Etsy search, clicks from favorites or recently viewed, promoted listings: all hidden.

That kinda sucks.

Where’s all the Etsy traffic? Probably in “(direct) / (none)”…

You could just analyse your traffic sources in Shop Stats, but let’s fix it in Google Analytics instead.

This guide explains how to use channel definitions and filters to make traffic sources a whole lot more accurate!

This looks much better! Yep, these are the exact same visitors.
(If you’re a beginner, don’t be scared! You only need to copy-and-paste.)

โš ๏ธ These instructions are for GA Universal Analytics and are no longer applicable. Etsy now supports GA4.

Stop! Protect that data.

The filters and channel definitions we’re about to make are complex and significantly change your data. It’s really really important that you have a separate Test View to do these in!

Preparing Google Analytics with backup & test Views

Before you continue, read how to create “backup” and “test” Views. Do this once and always rest assured that you have a backup in case anything goes wrong.

How to Copy Google Analytics Settings in Minutes

If you already have a Test view, and you’re totally happy with the filters that are running in it, now’s a good time to apply them to your main view.

Why is this Guide not-quite definitive?

To build this solution, I manually collect and interpret all the different types of links within Etsy’s website. I might miss some and they do change slightly over time. I can’t claim that it will correctly attribute every single visitor you ever get.

In the years since I started this method, there have been no significant changes to how Etsy tracks their main internal traffic sources, like search. The links that tend to change are things like home page promotions and showing other products on a listing page (which they’re always experimenting with).

You can safely implement this configuration and know that your Etsy visitor attribution will be much more accurate, even if it’s sometimes not fully complete. (Which, honestly, is a helpful attitude to take with anything in Google Analytics.)

What’s the plan?

You already know that Google Analytics is powerful, but you might not realize just how much control you really have over your data before it shows up in your reports.

Channel Definitions

channel definition is what Analytics uses to determine whether a visit is Direct, Referral, Social, Organic Search, Paid Search etc. These are different from Source/Medium and are more like general “buckets” (or… Channels).

We’re going to edit the default channel definitions so in-Etsy visits go into the right buckets.


filter lets you exclude, include or change data of some kind. For example, you might already have a filter that excludes visits from your home IP address, so your own visits aren’t tracked.

We’re going to use filters that re-write traffic source data completely.


All of this is based on the extra information Etsy includes in every URL. Check it out yourself: load any listing in Etsy and take a look at the URL in your browser. 

That’s a link to one of my products. Notice the “ref=finds_l” at the end? That tells us how I got to the page. (“finds” means an Etsy Finds or Editors’ Picks gallery).

Almost every link on Etsy adds a “ref” value to the end, so Etsy can pull exciting reports about things like whether products on the left of a shop get more clicks than products on the right.

We can also use them, because they tell us how people really found your listing!

These changes are not retroactive!

Important note: Filters and new Channel Definitions will NOT apply to data that’s already in your account. They will only apply to NEW visitors and sessions. The sooner you set these configurations up, the sooner you can start looking at your real traffic sources from Etsy.

Channel Grouping Settings

Channels are like big buckets to group traffic from different places that have a similar purpose. For example, traffic from Google searches and searches on Etsy should both be in the “Organic Search” channel.

The Default Channel Groupings can be used across many of the standard Google Analytics reports, plus in custom reports and Dashboards. They’re a very handy way to do a first-look breakdown of where your visitors are coming from.

But right now, they’re all wrong!

We need to edit the Default Channel Grouping definitions. These are the set of rules that Google Analytics follows in the background to decide what Default Channel a particular visit (session) should go in.

What about custom Channel Groupings?

Keen-eyed readers may notice that you can create entirely new, custom Channel Groupings instead of messing with the defaults. And ideally, this is exactly what we’d do. Unfortunately, custom channels can’t be used in many reports – including custom reports or dashboards – so they aren’t that useful (yet). This risk of editing the defaults is why we make these changes in our Test View first, so we still have access to the original data (in our main View) if we make a mistake.

What are the defaults?

Head to View > Channel Settings > Channel Groupings > “Default Channel Grouping”

You’ll see the following list of Channels that are defined:

  • Direct
  • Organic Search
  • Social
  • Email
  • Affiliates
  • Referral
  • Paid Search
  • Other Advertising
  • Display

Click on each one and you’ll open the rules that define that channel. You’ll see that the standard definition is normally just to match the “System Defined Channel”. That doesn’t tell you much, but here are the definitions of each System Defined Channel. You do not need to understand all this to complete this configuration!

Most of the default definitions are based on the “Medium” of the visit. You’ll see that visits go into “Organic Search”, for example, when their Medium says organic“.

But we know that because Analytics is telling us the wrong traffic source for many of our visits from inside Etsy, the Medium values must be unreliable.

Let’s update each definition to use the handy “ref” value that Etsy gives us, to put our internal Etsy traffic into the right buckets!

How to edit your Default Channel Grouping definitions

ALL UPDATED – June 2020

1. Open the Channel Definitions

  1. Open the Admin area (bottom-left “cog” icon)
  2. Select your Etsy shop’s Account, Property & Test View in each column’s drop down
  3. Go to View > Channel Settings > Channel Groupings
  4. Open the Default Channel Grouping

2. Direct

  1. Click Direct to open the definition.
  2. Leave the existing rule alone, but click “AND” to add an extra one.
    1. Set the first two drop-downs of the rule to:
      Landing Page URL > does not match regex > 
    2. In the text box, paste in the following text: ^.*ref=.*$
  3. Click “OR” to add a new rule.
    1. Set the first two drop-downs of the rule to:
      Landing Page URL > matches regex > 
    2. In the text box, paste in the following text: ^.*ref=((also_bought|cart|condensed_|ks_|l2|listing-(free-shipping|shop)|lp_|nla_(listing|sfs|shop)|related-|s2|sh-|shop_(contact|home|items_search)|shopsection|simple-shop).*|.*(cart_overlay|listing-same|pagination|review|shop_overview).*)$
  4. Go ahead, change the Display Color! (You can do this for all of them if you like.)
  5. Click [ Done ] to save

Here are what the rules should look like:

A screenshot of how this information is visually displayed in the Channel Definition edit form.

Here’s what this means in plain English: 

Only allow a visit into the “Direct” bucket if…
a) It was already going to be put into the “Direct” bucket (according to GA’s built-in rules) AND
b) It did not come from inside Etsy (as far as we can tell).

We assume that the visit did not come from inside Etsy if the first page (Landing Page) either:
a) Does not have a “ref” value at all, OR
b) Has a “ref” value that’s only used for clicks from inside a shop. It’s impossible for this to be the first page a visitor sees unless this link has been shared somewhere else online, so it cannot be a visit directly from another part of Etsy.

3. Organic Search

These rules will count any unpaid clicks from Etsy searches to your shop, including:

  • Typing a keyword (regular search)
  • Browsing a “pre-filled” search, like a tag or a phrase Etsy is promoting in other ways
  • Browsing a category (which works like search)
  • Clicking a suggested shop name or going straight to your shop by searching your exact shop name

We’ll set a special Campaign for some of these later, to tell them apart. But I include them all in “Organic Search” because they all use the built-in search function in Etsy.

The Rules:

  1. Click Organic Search to open the definition.
  2. Change the existing rule to:
    Medium > exactly matches > organic
  3. Click “OR” on the right to add a new rule.
    (The “OR” means that either of these two rules can be true for this Channel to apply – they don’t both have to be true.)
  4. Set the new rule to:
    Landing Page URL > matches regex ^.*ref=(cat_gallery|sr_gallery|shop_sugg|ss_|search_shop_redirect).*$
  5. AND Set the rule to:
    Landing Page URL > does not match regex >  ^.*ref=.*$
  6. OR Set the new rule to:
    Landing Page URL > matches regex ^.*ref=(cat_gallery|sr_gallery|shop_sugg|ss_|search_shop_redirect).*$
  7. [ Done ]

4. Social

  1. Click Social to open the definition.
  2. Leave the existing rule alone, but click “AND” to add an extra one.
  3. Landing Page URL > does not match regex >  ^.*ref=.*$
  4. OR – Landing Page URL > matches regex >  ^.*ref=((also_bought|cart|condensed_|ks_|l2|listing-(free-shipping|shop)|lp_|nla_(listing|sfs|shop)|related-|s2|sh-|shop_(contact|home|items_search)|shopsection|simple-shop).*|.*(cart_overlay|listing-same|pagination|review|shop_overview).*)$
  5. [ Done ]

5. Email

  1. Click Email to open the definition.
  2. Leave the existing rule alone, but click “AND” to add an extra one.
  3. Landing Page URL > does not match regex >  ^.*ref=.*$
  4. OR – Landing Page URL > matches regex >  ^.*ref=((also_bought|cart|condensed_|ks_|l2|listing-(free-shipping|shop)|lp_|nla_(listing|sfs|shop)|related-|s2|sh-|shop_(contact|home|items_search)|shopsection|simple-shop).*|.*(cart_overlay|listing-same|pagination|review|shop_overview).*)$
  5. [ Done ]

6. Affiliates

  1. Click Affiliates to open the definition.
  2. Leave the existing rule alone, but click “AND” to add an extra one.
  3. Landing Page URL > does not match regex >  ^.*ref=.*$
  4. OR – Landing Page URL > matches regex >  ^.*ref=((also_bought|cart|condensed_|ks_|l2|listing-(free-shipping|shop)|lp_|nla_(listing|sfs|shop)|related-|s2|sh-|shop_(contact|home|items_search)|shopsection|simple-shop).*|.*(cart_overlay|listing-same|pagination|review|shop_overview).*)$
  5. [ Done ]

7. Paid Search

These rules count clicks from any paid ads you run inside Etsy, no matter where Etsy displays them: search results, similar listings, sold out listings or new places they might add in the future!

Your Offsite ads – and any other cost-per-click ads you run yourself – will also show up in this Channel, using the default rule.

The Rules:

  1. Click Paid Search to open the definition.
  2. Change the existing rule to:
    Medium > matches regex >  ^(cpc|ppc|paidsearch)$
  3. OR – Landing Page URL > matches regex >  ^.*ref=.*plkey.*$
  4. AND – Landing Page URL > does not match regex >  ^.*ref=.*$
  5. ORLanding Page URL > matches regex >  ^.*ref=.*plkey.*$
  6. AND – Ad Distribution Network > does not exactly match > Content
  7. [ Done ]

8. Referral

These rules capture any other in-Etsy traffic that hasn’t yet been sorted into an earlier bucket, while still ignoring links from inside your shop.

WATCH OUT: The rules for Referral are a bit different to the other Channels, with matches regex and does not match regex reversed. Enter these rules carefully!

  1. Click Referral to open the definition.
  2. Leave the existing rule alone
  3. OR – Landing Page URL > matches regex >  ^.*ref=.*$
  4. AND – System Defined Channel > matches > Referral
  5. OR – Landing Page URL > does not match regex > ^.*ref=((also_bought|cart|condensed_|ks_|l2|listing-(free-shipping|shop)|lp_|nla_(listing|sfs|shop)|related-|s2|sh-|shop_(contact|home|items_search)|shopsection|simple-shop).*|.*(cart_overlay|listing-same|pagination|review|shop_overview).*)$
  6. [ Done ]

9. Don’t change the last two Channels

You can ignore Other Advertising and Display.

10. SAVE your definitions (blue button at the bottom)

At this point, you’re best off to keep going and add your new Filters, too. It’s easiest to test and read your new, fixed up data if you’ve done both changes.


Filters let you permanently change your Google Analytics data in some way, by applying a simple rule. You might exclude certain kinds of visits (like from your home IP address) or make your page URLs all lowercase, so they don’t get listed twice.

We’re going to use them to take a look at our friend, the ref value, and re-write the visit’s Source, Medium and a few other things.

So if filters re-write the source of a visit entirely, why on earth did we make all those changes to the Channel Definitions??

That’s a good question. Unfortunately, visits are put into their Channels before filters are applied, so they’ll simply ignore these filters. That’s why we need to make effectively the same changes in both the Default Channel definitions and with filters, so that both Channel and Source/Medium data is correct.

So, let’s create those filters!

How to use Filters to correct your Etsy traffic source data

ALL UPDATED – June 2020

1. Open the list of filters

  1. Open the Admin area (bottom-left “cog” icon)
  2. Select your Etsy shop’s Account, Property & Test View in each column’s drop down
  3. Go to View > Filters

2. Identify all Etsy traffic


All visits to your shop from other places inside Etsy should have a Source of ““. This filter has to check every single page view, not just the first (Landing) page, so we also make sure the filter doesn’t run when the visitor clicked on a link within your shop (categories, related listings etc).

  1. [ + Add Filter ] (red button above the list of filters)
  2. Filter NameCreate source:
  3. Filter TypeCustom
  4. Select “Advanced” from the list
  5. Field A -> Extract A = “Request URI” from the drop-down.
  6. Paste the following text into the box next to it: ^.*ref=(?!also_bou|cart|condensed_|ks_|l2|listing-(free-shipping|shop)|lp_|nla_(listing|sfs|shop)|related-|s2|sh-|shop_(contact|home|items_search)|shopsection|simple-shop|.*cart_overlay|.*listing-same|.*pagination|.*review|.*shop_overview).*$
  7. Output To -> Constructor = “Campaign Source from the drop-down.
  8. In the box next to it, enter:
  9. Leave the rest of the settings as they are and press [ Save ]

3. Identify all Etsy referral traffic


Any visits from Etsy that aren’t from inside your shop or via searches or promoted listings are just regular “referral” traffic. We set their Medium to “referral“.

In this filter, we set all Etsy traffic as “referral”, then we’ll override it in the next two filters. This is an example of how filters are applied in the order that they’re listed in your account.

  1. [ + Add Filter ]
  2. Filter NameCreate Medium: Etsy referrals
  3. Filter TypeCustom
  4. Select “Advanced” from the list
  5. Field A -> Extract A = “Request URI” from the drop-down.
  6. Paste the following text into the box next to it:  ^.*ref=(?!also_bou|cart|condensed_|ks_|l2|listing-(free-shipping|shop)|lp_|nla_(listing|sfs|shop)|related-|s2|sh-|shop_(contact|home|items_search)|shopsection|simple-shop|.*cart_overlay|.*listing-same|.*pagination|.*review|.*shop_overview).*$
  7. Output To -> Constructor = “Campaign Medium“from the drop-down.
  8. In the box next to it, enter: referral
  9. Leave the rest of the settings as they are and press [ Save ]

4. Identify all Etsy search traffic

Next, we find visits that came via an internal Etsy search (but not within your own shop) and set their Medium to “organic“. This also captures visits from categories and “pre-filled” searches, like phrases Etsy promotes or popular items in a tag.

  1. [ + Add Filter ]
  2. Filter NameCreate Medium: Etsy search
  3. Filter TypeCustom
  4. Select “Advanced” from the list
  5. Field A > Request URI > ^.*ref=(cat_gallery|sr_gallery|shop_sugg|ss_|search_shop_redirect).*$
  6. Output To > Campaign Medium > organic
  7. Leave the rest of the settings as they are and [ Save ]

5. Identify all Etsy promoted listings traffic

Finally, we set the Medium for all traffic through your promoted listings to “cpc” (or “cost per click”). This is the standard Analytics Medium for this kind of advertising traffic.

  1. [ + Add Filter ]
  2. Filter Name = Create Medium: Etsy promoted listings
  3. Filter Type = Custom
  4. Select “Advanced” from the list
  5. Field A > Request URI >^.*ref=.*plkey.*$
  6. Output To > Campaign Medium > cpc
  7. Leave the rest of the settings as they are and [ Save ]

Phew! Take a break – those are the most important filters done and you might be getting some serious following-instructions-fatigue. I’ll wait while you make a cup of tea…

The rest of these filters are adding in the finer details of your traffic sources using the rest of the Google Analytics “campaign” fields. If you stop now, your basic traffic source reports will still be correct. Yay!

6. Record their search terms

For all traffic from Etsy searches or promoted listings, we can record what search terms they used to find you, even if this phrase was pre-filled by Etsy (like a tag).

  1. [ + Add Filter ]
  2. Filter Name = Create Campaign Term: Search
  3. Filter Type = Custom
  4. Select “Advanced” from the list
  5. Field A > Request URI > ^.*ga_search_query=([^&]+)\&.*$
  6. Output To > Campaign Term > $A1
    (That little code will output the search term that’s in the URL)
  7. Leave the rest of the settings as they are and [ Save ]

7. Identify specific Etsy referrals

We can set a Campaign Name for other regular sources of Etsy referrals, like the Etsy Home Page, or to tell apart different kinds of links in Etsy search results.

The next instructions tell you how to create filters for 16 specific in-Etsy sources. I’ve tried to match the names with what Etsy uses and to stay consistent with past versions of these filters, but sometimes I’ve chosen a different name that I think is clearer.

I’ve put them in rough order of value or importance. Skim through the titles to work out which ones might be useful to you – you don’t need to create them all!

Any visits that don’t fall into these specific campaigns will simply have a blank Campaign Name, but will still get the “” Source and appropriate “referral, organic or cpc” Medium.

Follow the basic steps of creating a new advanced filter, like you’ve done so far, to apply these additional groups of settings:

Create Campaign: Etsy Home Page

This covers direct links to listings from an Etsy buyer’s home page, like “Recently Viewed” and featured trends. Etsy have kept these “ref” values really consistent over the past few years, so I expect this campaign to continue working reliably as Etsy changes and experiments with their home page promos.

  1. Field A > Request URI >  ^.*ref=(hp_|ugc_list).*$
  2. Output To > Campaign Name > Etsy Home Page

Create Campaign: Featured

Editors’ Picks, “Etsy Finds” or “featured” galleries.

  1. Field A > Request URI >  ^.*ref=(.*_finds|finds_|trending_item).*$
  2. Output To > Campaign Name > Featured

Create Campaign: Favorites

Users returning to their own favorites, including via the Updates drop down in the top-right of each page.

  1. Field A > Request URI >  ^.*ref=(user_profile|.*recently_favorited|notif_).*$
  2. Output To > Campaign Name > Favorites

Create Campaign: Similar Listings

When your listing is shown on another shop’s listing (active or sold out), as a similar or related item. This campaign will also get added to clicks on Promoted Listings (ads) that are shown on individual listings.

  1. Field A > Request URI >  ^.*ref=(.*_top_ad|.*_similar_listing|related_listings|similar_items|sold_out|styf-|dflc_).*$
  2. Output To > Campaign Name > Similar Listings

Create Campaign: Recently Viewed

Users returning to their recently viewed listings, except via the actual home page. (Those visits get the “Etsy Home Page” Campaign.)

  1. Field A > Request URI >  ^.*ref=(?!hp_)(rv|.*[_-]rv|.*recently_viewed).*$
  2. Output To > Campaign Name > Recently Viewed

Create Campaign: Similar to Recently Viewed

Users discovering your items because Etsy thinks they’re similar to other listings they’ve viewed.

  1. Field A > Request URI >  ^.*ref=(?!hp_).*(strv|srv).*$
  2. Output To > Campaign Name > Similar to Recently Viewed

Create Campaign: Our Picks for You

Users discovering your items through Etsy’s “Our Picks for You” feature, anywhere on the site apart from the home page.

  1. Field A > Request URI >  ^.*ref=(?!hp_).*opfy.*$
  2. Output To > Campaign Name > Our Picks for You

Create Campaign: Shop Updates

  1. Field A > Request URI >  ^.*ref=(shop-shares).*$
  2. Output To > Campaign Name > Shop Updates

Create Campaign: Purchases

Users going back to their past purchases.

  1. Field A > Request URI >  ^.*ref=yr_purchases.*$
  2. Output To > Campaign Name > Purchases

Create Campaign: Others’ Favorites

Users finding your shop via other people’s Favorites.

  1. Field A > Request URI >  ^.*ref=(.*_faveitems|.*_faveshops|.*_favoriter).*$
  2. Output To > Campaign Name > Others' Favorites

Create Campaign: Conversations

  1. Field A > Request URI > ^.*ref=.*_convo.*$
  2. Output To > Campaign Name > Conversations

Create Campaign: Shop Manager

Your own visits via the Shop Manager. Use this campaign to exclude your own visits in another filter or a segment.

  1. Field A > Request URI > ^.*ref=(hdr_|seller|listings_manager_grid).*$
  2. Output To > Campaign Name > Shop Manager
Types of Organic Search clicks:

The final four campaigns distinguish clicks from different kinds of organic searches. Visits with these campaigns should all have the “Organic Search” Channel and “organic” Medium. They will not get a Search Term, because Etsy doesn’t send this for us to read. These visits should make up a very small proportion of your total organic Etsy search traffic!

Create Campaign: Browse Category

  1. Field A > Request URI >  ^.*(ga_search_query=\&.*ref=sr_gallery)|(ref=br_).*$
  2. Output To > Campaign Name > Browse Category

Create Campaign: Exact Shop Name

Users who search for your exact shop username, without spaces. (This does not happen for ALL shops!)

  1. Field A > Request URI >  ^.*ref=search_shop_redirect.*$
  2. Output To > Campaign Name > Exact Shop Name

Create Campaign: Shop Suggestion

Clicks on the “Did you mean the shop…” link at the top of search results when a user searches for something similar to your shop name.

  1. Field A > Request URI > ^.*ref=shop_sugg.*$
  2. Output To > Campaign Name > Shop Suggestion

Create Campaign: Shop Search Results

Clicks on search results after a user searches with the “find shop names containing…” option.

  1. Field A > Request URI > ^.*ref=ss_.*$
  2. Output To > Campaign Name > Shop Search Results

That’s it! All filters are complete.

All done! Now what?

Congratulations on making it through this massive guide! Here are a few more tips to round things out and ways to get help.


You can test the filters straight away – just head to Real-Time reports and watch what happens as you enter your shop listings in different ways on Etsy. Try out each situation we created a filter for above (eg. from a search, Etsy home page etc.)

You must be clicking a link to a LISTING for Google Analytics code to run on your shop. Etsy does not run our tracking code on our shop home pages anymore.

If you filter yourself out of Real-Time reports, try it on a phone or tablet using your mobile data. Do not use the Etsy App for this test.

What reports to use

These changes now mean that each visit should have a (more) accurate Channel, Source, Medium and sometimes Campaign or campaign data (keyword or “content”). You can use this information in most reports you look at, by adding a Secondary Dimension, but you’ll mainly be looking at your Acquisition reports to see your new-and-improved data.

In particular, try these:

  • Acquisition > All Traffic > Channels
  • Acquisition > All Traffic > Source/Medium
  • Acquisition > Campaigns > All Campaigns
  • Acquisition > Campaigns > Organic Keywords

How to get some help

Quick question or niggling problem?

Check if it’s been answered in the comments below or leave a new comment with your question.

Here’s to accurate data!

Learn Core Analytics Skills in my course on Tizzit HQ

In my Marketing Analytics with Google Analytics course, youโ€™ll learn how to use Google Analytics to access information about your marketing results, including how to harness the power of Campaign Tags for even more accurate reports!

The Core Analytics Skills module covers Segmentation, Trend Analysis, using hypotheses and a bunch of “rules of thumb” (or “common sense for statistics”) to help you think about your data. All extremely useful when trying to compare Advanced Segments!

Comments (47)

Thank you, thank you, thank you!!!!!! You are seriously the best and make google analytics much more manageable for those of us who don’t work with it all the time!

Thanks for the feedback, Genevieve! I haven’t added any screenshots to this post yet, so I’d love to hear from you what you think you’d most benefit from visualising, if you’ve tried out any of the instructions yet.

I am going to let the new channel grouping run for a few weeks and then I can tell you. I set everything up in my test view last night so I have been able to see the filters in actions. It’s interesting to see exactly where traffic is coming from, like abandoned carts and receipts.

Hi Brad, your organic Etsy search terms will be under Acquisition > Campaigns > Organic Keywords. There’ll be a sprinkling of other search engine’s keywords in here too, so if you want to see only Etsy terms, you can use an Advanced Segment or do it this way:
1. Go to Acquisition > All Traffic > Source/Medium
2. Click on the entry
3. Above the table, on the right, change the Primary Dimension to “Keyword” (you can type it in the dropdown box to find it).

If you’ve done all this and there’s actually no data for either the source or the keyword reports, double check the regex you pasted in to the filter. Make sure there’s no spaces on either end or missing parts. Double check the date range you’re looking at.

If you can’t find the solution, I can help! Reply with what you’ve tried and I’ll get in touch via email, or you might even be interested in my trial consulting spots, if your shop is on the larger side.

Good luck!

My mind has official been blown! This is amazing! Heard your interview on the Etsy Convo pod cast and sign up to your emails straight away. Now off to implement some more of your great ideas!

Awesome, great to hear, Cassie! Don’t hesitate to reply to any of the course emails if you have questions.

This is so great. I recently had a spike in traffic but couldn’t action it since etsy wasn’t correctly reporting where traffic was coming from – and when I found out it was too late.
Incidentally this traffic had the ref=explore_page appended to url which was a pre-populated search results page. I can’t see this referral listed above, do you have more info on when it’s used?


Great catch, thanks Felicity! No, I haven’t seen that one. I just checked a promo email from Etsy and it didn’t come up on that pre-populated search page it linked to. I’ll have to do more research into it.

This article is due a review, though, and I’d like to make the labels more in-line with what Etsy uses inside Shop Stats. I know it’s definitely missing visits from a user’s “Home Page” and “Editors Picks” <-- cause we def want to know when we're in them!! In the meantime, any ones I haven't done yet will come through as (correct) but have Campaign as "(not set)".

OMG, thanks so much. Even for those of us who live inside Google Analytics all the time, having the regex expressions defined and having someone who knows which Etsy UTMs mean what is fantastic.

This is fantastic.

Have you, by any chance, found a way to track conversions or ad-to-cart or similar actions?

Thanks, Mika! Regexes are not fun to figure out from scratch, that’s for sure.

Unfortunately, I haven’t found a solution to tracking conversions or add-to-carts inside GA automatically. You can often track down an individual buyer in GA’s User Explorer, but it’s a manual, per-customer process.

Luckily, you don’t need to! You’ll get much more accurate traffic sources for your own website by default. To get a little more control over it, you’ll want to use Campaign Tags, though. Thanks for dropping by!

Thanks Lesley! It’s a big learning curve (:

2 questions:
I made a RAW data view & it only shows data from the time I made it. Should it not show all the previous data leading up to this moment?

2- I set up your version for engaged viewers on my etsy & personal websites. It works amazingly, BUT when I log back into my Google Analytics, it’s back to the old non-engaged version. Where did it go? I bookmarked it & that goes there, but I don’t understand where to find it in my analytics account

That’s correct that the Raw Data view will only have data from when you created it. Most things in GA work that way, unfortunately. But none of your other changes will affect your previous data either (in your Main View), so it’s safe there anyway.

The Engagement Rate you’ve created is available either as the “All Goals” Conversion Rate in any report if you don’t have any other goals! Or you can use the “Engagement Rate” metric directly in custom dashboards or reports, under the “Customization” section on the left. If you’ve installed my Etsy dashboards, they use it.

If you still can’t find it, what do you see at the top of the page you’ve bookmarked?

I apologize if this gets sent twice- It said there was an error ):

I don’t see the engaged traffic under goals- I did install your tactics. The bookmarked page is

Another question:
I have a listing getting big hits & sales the last 2 days. I see it under Behavior-site content-landing pages. How do I find where this traffic is coming directly from? It’s a niche item & it has to be on a blog or something for this to happen.

ps- Etsy’s stats show 0 visits for the 3 sales in 24 hours. Your google analytics show me over 100 visits- Thank you for real numbers!!!!

If you’re not seeing the goals, then you might have selected the wrong View when you were installing them. Or you might have installed them into your Test view and are looking at your All Web Site Data view, where you don’t see them. You can check what View you’re in at the top-left of your screen.

For your 2nd question, click on the row in the Landing Page report for that product to open a report just for that page, then change the Primary Dimension to “Source” (directly above the table).

Glad this is helping you! Have you done my Google Analytics course yet?

Hi Lesley- That source button is amazing. I am finally seeing how much traffic I get from my newsletter!
I am scrambling to learn so much! I am working my way through your course. I think I should start over from day one. Thank you for providing this information for us all!!!!
Damn Good Doormats

This is amazing – thank you.

I’ve just had a view that has come under transaction – email

The url is /uk/listing/519313733/personalised-baby-bunting-blue-cloud?campaign_label=proteus_transaction_buyer_notification_boe_convo_url_treatment&email_sent=1558842648&euid=p7SQ-2avgfKr_8zRmtU858enV73J&eaid=45851332421&x_eaid=4d329cc276

Do you know what this is? is it from a convo, or an reminder email?

I’ve set up emails from abandoned carts and recently favourites items and would like to track those links too.

Many thanks, Sarah

Glad to help, Sarah!

I don’t think that’s from a regular convo, but I’m not sure exactly what it is. If you’ve received any of those reminder emails lately (even from other Etsy sellers), click on the product links in them and see what shows up in your address bar after “campaign_label”. If you can find something that matches proteus_transaction_buyer_notification_boe_convo_url_treatment then that’s the answer! Make sure to let us know what you find out.

Thank you. So I did some research, and found out it was from the email that gets sent when you purchase something (the order confirmation email). So I added a few new filters… Not entirely sure what I was doing, so hope they work! ๐Ÿ™‚

Order confirmation email ^.*ref=.*transaction_buyer_notification.*$

Shipping notification email ^.*ref=.*shipping_notification.*$

Review request email ^.*ref=.*awaiting_feedback_reminder.*$

… Also, have you experimented with Google Data Studio?

I find Analytics a bit clumsy and overwhelming, so set up some reports on Data Studio. I also managed to link it to a Google spreadsheet in which I manually entered keywords (from Marmalead) and sales and stats from Etsy. This has given me a great visual to views v sales.

If you have played with it, I wonder if you have any useful reports? Am happy to share what I hace set up.

Thanks again, Sarah

Hey Sarah – yes, Google Data Studio is awesome! Unfortunately I haven’t had a chance to build any good Data Studio templates for Etsy yet, but I’ve used it for other clients (in my day job) and have thought a bit about how it’d be handy for us here, too.

You’re definitely on the write track using it to bring in other data via a Google Spreadsheet, as well. You should also experiment creating a Blended Data Source with your spreadsheet and GA, so you can graph sales together with other GA data, like sessions from various sources. (The trick is: put GA on the left side of your blended data source and include Sessions in your selected metrics. That’ll make sense once you get to that screen.)

I’ll send you an email so you can share yours with me. I’d love to see it!

This was amazing gift.

My Etsy shop is only 7 months old, and each month I’m challenging myself to dig into to some new aspect of the business to learn something new (not product development – ALL the other things).

Even though I knew it would be super valuable, I’ve been putting off digging into analytics because I needed someone to lean over my shoulder and point to where the things should go. At this point I can’t afford paid help (testing to see if this is going to be a hobby or a hustle). So I really appreciate this resource.

This is awesome..Ive used it on two friends shops now and the info is so much more organised than it was before and the data is much easier to get at. I’m surprised also by how closely our best performing listings and search terms mirror each other across both google and Etsy.Interesting!

Have you got any info, or could you create the regexes for the new Etsy ads system? Where the traffic now comes from both google shopping and Etsy PL..will the PL regexes still work? Do they still classify them in the same way? Any news would be gratefully appreciated. Many thanks for your hard work in documenting this for the rest of us. It’s truly appreciated! ๐Ÿ™‚

This is AMAZING! Thank you so much, wish I’d found this ages ago. I do have the same question as George above though, will this all still work with the changes to Etsy Ads?

Hi Natalie,
As far as I can see, Etsy still uses the same little ref codes on in-Etsy ads (sc_gallery...etc) – so no changes there, as far as tracking is concerned ๐Ÿ™‚

Hi. This is simply awesome! I immediately implemented this in my google analytics and after a few hours all this beautiful data has already started coming in. I also went ahead and purchased your ebook from Etsy, partly as a thank you and of course I am sure it will be very very useful just like your blog. Thank you so much.

Thank you for this guide! I am encountering an error in “Step 2: Identify all Etsy traffic” and “Step 3″ Identify all Etsy referral traffic” as GA is telling me that the REGEX cannot be longer than 255 characters. Any advice?

Hi Christian, I must have missed something in my testing, sorry! I’ve condensed the regex for those two steps and updated the article.

I don’t know if anyone else has had this problem, but for a couple of the longer regexs (specifically the first 2 filters) it told me that the character limit for the field was 250. I had to trim out some things to pare it down. Is there a setting somewhere that allows longer expressions, or has GA made a change?

Hi Spencer, sorry you had to catch this mistake for me! I’ve now condensed that long regex so it fits in the character limit, without losing any of the things it will capture. I’d recommend going back and grabbing the new version.

Really exceptionally useful and well written tutorial, this needs to be shared with Etsy community out there.

The only thing I might mention is that newer users may not realize that filters do not apply retroactively, so when they go to their Acquisition reports and look for their cleaned up new data as instructed they will only see the new campaigns/sources applied to traffic that comes in AFTER the filters and groupings are created.

Thank you again for putting this out there. Incredibly thorough.

Good call, Trevor! I normally talk about how things aren’t retroactive in GA but must have missed explaining it clearly in this one. I’ll make sure to add it in my next review.

Glad to hear it was useful, though ๐Ÿ™‚

Wonderful guide! Does it work even for the Etsy app traffic or do we need to set up another view with these same parameters?

Hi Rita, great to hear you liked it!

Unfortunately, Etsy does not run our Google Analytics code when people visit our shops using the Etsy App, so we can’t see that traffic in our reports at all ๐Ÿ™

Holy cow! This is gold. Canโ€™t believe Iโ€™ve had analytics running for years and have never seen this! Thanks so much!!! I will be implementing this immediately! Do you have a way to accept donations for your work?

Hello. I edited the Default Channel Grouping, and the user’s data are retained for two days only. I can see users who came today and yesterday. Yesterday I still saw data for the 12th, but today they are missing

Hi Jason, that is quite weird! It’s not something I’m seeing in any other accounts. The screenshot you shared is from the Google Analytics Home screen, but do you see the same dropoff in all reports? What’s happening in your Raw or Main Views? (This kind of situation is exactly why I suggest implementing this in a Test view first!)

I can’t thank you enough, your entire “Just For Etsy” series is packed with so much useful information!

I also tried to find out more information on google about the notice in the website’s header: “Update Incoming: Etsy has changed how they run Google Analytics on your site.”, but no results.

What does this mean for people who have already followed through with your Etsy / GA guides, will those implementations still work and what exactly are these “Etsy changes”, if you don’t mind me asking? Thank you very much, once again!

Your work is much appreciated!

Hi Lesley,

I am not a coder! I have had an Etsy site for about a year without any additional analytics other than what etsy provides. I have now set up Google Analytics using Universal (not 4) and am following your instructions which are absolutely perfect for someone who has no idea what they are doing! So here’s what I’ve done:

Created Google Account
Created Analytics Account
Created Property
Put my Tracking Code into Etsy
Checked that everything worked— I had one active user showing up in my GA so all good..

I then followed your instructions to filter out etsy views that are actually me. I tested it and I got no active users so it was working.
I created a raw data account and a test data account.

I then used the test data account to put in place all of the filters you suggested.
I don’t know how to test any of it and if it works, I don’t know how to get it out of my test account and into my regular account.

To test it, I used my test account (all website data) and looked at Real Time. I opened a new tab and went to one of my etsy listings. Nothing is showing in Real Time–nothing.

Help please. I don’t know why it worked before I put in all the filters or if I’m just not testing it correctly.

Thanks SO much.

Hi Rebecca! Sorry to hear you’re having trouble. Here are some ideas that might help:
– When you say “my test account (all website data)”, does that mean you have created a new Google Analytics Account with a whole separate Property? Or are you referring to a View? Your Main (“All Web Site Data”), Test and Raw Data Views should all exist inside the same Property. Go back to those instructions and double check that’s how you have it setup firstly.

– This kind of thing is exactly what the Raw Data View is for, which has no filters applied that can possibly go wrong! You can open that View’s Realtime report and one of your listings, to see if a visit appears. If no visits appears then, go back to my first suggestion and make sure all of your Views are in the same Property.

– Testing the Etsy Traffic Sources filters pretty much entails configuring them on your Test View and waiting a while (days, normally) to check that the data you see in the reports looks right. That your “Direct” traffic drops considerably and that all the right Sources & Medium values are inside each Channel.
You can test it yourself by doing something like searching for your own shop in Etsy search and opening a listing through there. Then check that the right Source & Medium (“” and “organic”) appear in the Realtime > Traffic Sources report. However to do this test, you’ll probably need to remove whatever method you’re using to prevent tracking your own visits. If you’re using an IP Filter, it might be easier in the long run to ONLY apply that to your Main view and not your Test View at all!

– Once you’re happy that the filters work correctly, instructions for transferring the settings to your Main view are here:
Since you’re new to GA, Option 1 will hopefully work best for you, which will be super fast and mean you can keep using the data in your current Test view!

Great Leslie, I try to help my wife with her new job and this post is very helphful !!!
I have some question about “ref” in (GA universal) and I think ” this is the right place!”
I would like to know about meaning of these ref in the URL :
ref= shop_home_feat_2
ref= shop_home_recs_12

Thanks SO much

Leave a Reply

Your email address will not be published. Required fields are marked *