I tried all kinds of things. The most interesting thing (to me) was the clicks_paid_for / clicks_landed changed, depending on different targeting mechanisms I used.
I may have forgotten to acknowledge that I never really cared I didn't get all the clicks -- I was doing a CPA campaign, so I just baked in the non-visits.
Depending on targeting and platform, there was almost always a 20-70% discrepancy between the clicks I paid for (reported by the ad platform), and the visits that landed on my site (reported by GA, server logs, piwik, and analytics.js).
I may have forgotten to acknowledge that I never really cared I didn't get all the clicks -- I was doing a CPA campaign, so I just baked in the non-visits.
Depending on targeting and platform, there was almost always a 20-70% discrepancy between the clicks I paid for (reported by the ad platform), and the visits that landed on my site (reported by GA, server logs, piwik, and analytics.js).
Also interesting - AdWords was always within 5%.