arp242/goatcounter

Question: Is it possible to see the full referring path?

Closed this issue · 3 comments

I am completely new to GoatCounter but I am extremely interested in using it for my own blog and I was wondering if GoatCounter can show me the actual referring path?

Example (taken from the live demo):

image

Is it possible to see which subreddit and topic was linking to my page? As a content creator or small SaaS business owner this is extremely valuable information, as it allows me to see where people talk about my product or writings and lets me connect with my audience in a more meaningful way. Another great example would be to see which Wikipedia pages are actually linking to one's webpage. Just seeing Wikipedia as a referrer is not very helpful and being able to know which exact Wikipedia page linked to my page would be extremely valuable.

If this feature doesn't exist yet, would it be something you'd be interested to add to GoatCounter and accept PRs?

Usually this information isn't sent; and the Referer header contains just the domain. Browsers changed the default on this a year or two ago (sites can still change it, but most don't).

It's not a lack of feature – it's just that the information doesn't exist. All information we have is displayed.

Thanks for clarifying, just out of curiosity, where do other analytics platforms obtain that information then? I know that GA was able to show me the actual referring page before and also Plausible shows me the exact referring link to tweets, Wikipedia pages, etc. as well. Just wondering if there is still a feature here which could be added because I really love everything about GoatCounter but that is one thing that I'm missing immensely.

Was that recent or longer ago? Like I said, the defaults for Firefox, Chrome, and Safari changed a year or two ago to send less information.

For example, if I follow a Wikipedia link to my website, then all Firefox sends is:

Host:                        arp242.net
User-Agent:                  Mozilla/5.0 (X11; Linux x86_64; rv:124.0) Gecko/20100101 Firefox/124.0
Accept:                      text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language:             en-GB,en-US;q=0.8,en;q=0.5,nl;q=0.3
Accept-Encoding:             gzip, deflate, br
Referer:                     https://en.wikipedia.org/
Connection:                  keep-alive
Upgrade-Insecure-Requests:   1
Sec-Fetch-Dest:              document
Sec-Fetch-Mode:              navigate
Sec-Fetch-Site:              cross-site
Sec-Fetch-User:              ?1
Pragma:                      no-cache
Cache-Control:               no-cache

Note how it just sends the domain the Referer. This is from https://en.wikipedia.org/wiki/YAML

Chrome is similar:

Accept:                      text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Accept-Encoding:             gzip, deflate, br, zstd
Accept-Language:             en-GB,en-US;q=0.9,en;q=0.8
Referer:                     https://en.wikipedia.org/
Sec-Ch-Ua:                   "Chromium";v="123", "Not:A-Brand";v="8"
Sec-Ch-Ua-Mobile:            ?0
Sec-Ch-Ua-Platform:          "Linux"
Sec-Fetch-Dest:              document
Sec-Fetch-Mode:              navigate
Sec-Fetch-Site:              cross-site
Sec-Fetch-User:              ?1
Upgrade-Insecure-Requests:   1
User-Agent:                  Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36

Also, Wikipedia has this in the <head>:

<meta name="referrer" content="origin">
<meta name="referrer" content="origin-when-cross-origin">

Which explicitly tells browsers to only send the domain.

So I wouldn't know how to get that information. The situation is similar for most sites.

For Tweets you can use the Twitter API. I looked at this before (years ago) but that's not really implemented as I found that searching for the t.co usually works well enough (don't know if that would still work with all the API changes and whatnot).