In Google Analytics, under Conversion > Attribution > Attribution Model Comparison Tool, I am running into an attribution problem. Our e-commerce company has partnered with a financing company that allows visitors to purchase our product by financing with our partner. This requires our user to click a link that takes them from our purchase page, to our partner's page. After getting approved for financing, they are redirected to our page, and the purchase is completed.
This causes a problem in Google Analytics. To Google Analytics, it looks like our partner page is the referring media source, so many of our purchases show up under the source/medium of our financing partner. In reality, these people originally came from some other media source like Facebook, instagram or google.
Is there a way to bypass the traffic from this specific source/medium (our financing partner) so that I can see where these purchases originated from?
In this scenario, you'd probably want to add the partner domain to the Referral Exclusion List. https://support.google.com/analytics/answer/2795830
Note, there is something more sinister happening as well to your session counts. As the user returns with a new referrer, meaning the source/medium/campaign changed during a session, the previous sessions closes out and a new session is created. So this is ruining your session based metrics like pages/visit, time on site, etc... https://support.google.com/analytics/answer/2731565
Related
We have a problem with E-Commerce transactions sometimes not beeing set in relation to an ad click ("cpc"). They appear instead with the Channel/Medium "direct". This is a problem as we cannot correctly link our revenue to the costs spend on Google Ads.
We got a payment system that allows buyers to safely pay to sellers, and we get a fee percentage of the payment volume (similar like PayPal). We get our fees as soon as a pay-in is successful. Because our users can pay via bank wire as well it may take one or two days until we actually get our fee. This is why ecommerce transactions are not sent from the frontend to GA (on a thank-you page like in online shops), but from our server directly to GA as soon as a payment succeeds.
This is the GET call our server does when a payment succeeds:
GET https://www.google-analytics.com/collect?v=1&tid=UA-XXXXXX-1&cid=1746XXXXX.1593XXXXXXX&t=transaction&ti=mytransactionID&tr=1&cu=USD
Here is a small diagram that explains the process:
We use cross-domain tracking, and the GA Client ID of the users stay the same when they get redirected from mydomain.com to app.mydomain.com, so this should not be the problem. What I assume is, that when a user clicks on an ad, the gclid of the ad is lost. Is there a way to manually send the gclid ID to Google Analytics? I would store the gclid then as well in our payment. Or is there another (maybe better way) to send transactions to GA?
Your transaction hit will only be attributed to ad-click session if payment occurs in a 30-minutes interval since the last hit with the same ID. Otherwise, the transaction hit would start a new session. Due to 'last-non-direct' rule the new session would only be associated with "cpc" channel if there were no other intermediate sessions after ad click. Please check the Google Analytics extensive overview for deeper insight.
Storing and passing gclid might help, however, this might result in some discrepancies in cost reporting since there would be several sessions for the same click. In the case of passing gclid it's recommended to pass at least two hits:
a simple pageview hit with a dummy location parameter containing gclid
and then later a transaction hit with the same location paraeter. In that case you'll be able to see your transactions as a separate sessions with a distinct landing pages
You should make sure you're using the GA client id in the Measurement protocol hit to ensure the hit gets stitched to the other hits of that user.
Now regarding reporting: Google Analytics uses the attribution model "Last non-direct Click", despite the hit being sent later, GA will ignore direct and use the previous touch point which should be the PPC campaign.
There shouldn't be an issue there. Which report are you using to see the transaction appear as direct, rather than Paid Search?
On a website with affiliate links, where there is no programmatic access to the conversion logs, I treat it as offline conversions.
My Setup
Online
A user visit my website, see the affiliated ad and a promotion view hit is being sent.
When the user clicks the ad, a promotion click hit is being sent and the user is redirected to another page on my site.
On the "redirection page", an product view hit is being sent, and the user is being redirected to the affiliation link, passing his Google Analytics clientId.
Offline
Once a week I download the stats from the affiliate program, which looks something like:
clientId visits conversions revenue
4444444444.3333333333 1 0 $0
1234567890.1234567890 1 1 $16.40
Then I use the Measurement Protocol to send offline events:
For each line of visit, I send a product click hit.
For each line of conversion, I send a product purchase hit.
My Problem
The conversion shows up on the eCommerce report:
Because the offline hits are being sent after the original session is already closed, a new session is opened which doesn't contain the info about the user.
So I can't see the conversion on the demographic report, for example:
Optional Solution?
I'm thinking of using the user-id feature of Google Analytics.
Even though the users are not identified, I can identify them by their clientId.
Sure, this is not what Google intended when they introduced that feature, but I believe it will solve my issue. I'm just not sure about the negatives.
My Questions
Any feedback on my setup?
Why is it even necessary to pass the clientId after the session is closed? what kind of information is being shared between the real session and the offline hit?
Is it a bad idea to pass the clientId as a userId to Google Analytics? Why?
Relevant Articles
A Comprehensive Guide to Tracking Offline Interactions in Google Analytics using the Measurement Protocol
Google Universal Analytics isn’t Linking Offline and Online User Properly
We were able to link offline action through as you did with measurement protocol but the problem is that those sessions are not included in demographic and age report.
Rather looking those report I used them to do segmented analysis E.g. pages they have look at, sources they used to come also I used it with attribution model to understand best channels to drive more conversions.
Yes you can use CID as a user ID but I haven't tried it with offline tracking. Share the result with us.
I have a booking site that refers customers to other companies websites to confirm and pay for bookings. I only make money off of conversions, not clickthroughs. These sites are owned by other corporations and I do not have access to their website code, just to clarify.
I know that I can use GA to track clickthroughs from my site, but how do I track the actual conversions?
You cannot track conversions on another site unless they agree to send some data back to you. That's actually the answer, but I included a bit more info below.
Your business model is that of an affiliate. Affiliate tracking usually works by appending an parameter to the link that goes from your website to the partner website. The partner website has to take care that your parameter is persisted throughout the booking process. Finally on the confirmation page, if your id is present, they send a beacon that informs you a booking has actually happened.
That beacon is usually an image pixel on your server; if the pixel is called it writes a line to a logfile that contains information passed via the image source (e.g. the total price if your renumeration depends on revenue). If you want you can also use Google Analytics; it is unlikely that any partner site agrees to implement fully fledged GA implementation with cross domain tracking, but you could use the measurement protocol to construct a web beacon that is implemented as an image pixel that sends data back to your GA account. If you submit not only your affiliate id, but also the client id for the visit you referred to the partner site you could even attribute the conversion to the original traffic source.
But for conversion tracking you have to rely on the cooperation (and honesty) of your parters. There is no way to record transactions on their sites without some sort of tracking code.
I'm firing an event to GA that looks like:
_gaq.push(['_trackEvent', 'Subscribe Modal', 'submit', 'test#test.com']);
This tracks when a user has entered their email to sign up for a newsletter where 'test#test.com' is the email address they entered.
What I would like to do is generate a table from GA that lists each recorded email address and the source/medium associated with that event.
I'm not sure is this is possible but any help would be appreciated.
You do know that you are not allowed to upload personally identifiable data to Google Analytics, according to Googles TOS?
Google Analytics protects the confidentiality of your data in several ways:
Google Analytics customers are prohibited from sending personal information to Google.
The Google Analytics terms of service, which all Google Analytics customers must adhere to, prohibits sending personally identifiable information (PII) to Google Analytics. PII includes any data that can be used by Google to identify an individual, including (but not limited to) names, email addresses or billing information.
Data cannot be shared without consent.
Google Analytics data may not be shared without customer consent, except under certain limited circumstances, such as when required by law.
Google Analytics continues to invest in security.
Security-dedicated engineering teams at Google guard against external threats to data. Internal access to data (e.g. by employees) is regulated and subject to the Employee Access Controls and Procedures.
Please read further here: https://support.google.com/analytics/answer/6004245?hl=en-GB
But to answer your question, that is indeed possible. Look at the area called "Secondary Dimension" on the "Top events"-report page. There you can choose if you want to see Source/Medium, only Sources or only Medium, as in this screenshot:
Let's say that a person clicks on an ad on Facebook and lands on a page
http://www.store.com/product-page?utm_source=ad-agency-name&utm_medium=facebook&utm_content=fruit&utm_campaign=company-name
Than it closes a browser.
Later that day a person visits same page again by writing url directly in browser and purchases a product.
Google Analytics eCommerce tracking code is implemented on thank you page of that store.
Will Google Analytics eCommerce show this transaction's source as '(direct)' or as 'facebook'?
They will show this as "facebook". Google says that visits are attributed to the last marketing channel (for transaction attribution this is explicitely stated in the documentation but is also true just for visits).
Direct/Bookmarked visits are not a marketing channel according to Google. If there is already campaign info stored the visit will be attributed to the campaign (so a direct visit in GA is actually a direct visit by someone who has no prior campaign exposure or has deleted his GA cookie).
Btw. this means that campaign conversions will be overcounted at the expense of direct visits, if you need a more realistic picture you would have to look at the multichannel funnels which attribute to the "real" medium, not the marketing channel.