All Projects → goatandsheep → aws-web-analytics

goatandsheep / aws-web-analytics

Licence: GPL-3.0 License
Privacy-focused alternative to Google Analytics on AWS Pinpoint

Programming Languages

javascript
184084 projects - #8 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to aws-web-analytics

Angulartics
Analytics for AngularJS applications.
Stars: ✭ 1,966 (+4268.89%)
Mutual labels:  analytics, google-analytics
svelte-google-analytics
Google Analytics component for Svelte
Stars: ✭ 41 (-8.89%)
Mutual labels:  analytics, google-analytics
Goaccess
GoAccess is a real-time web log analyzer and interactive viewer that runs in a terminal in *nix systems or through your browser.
Stars: ✭ 14,096 (+31224.44%)
Mutual labels:  analytics, google-analytics
Vue Analytics
Google Analytics plugin for Vue
Stars: ✭ 1,780 (+3855.56%)
Mutual labels:  analytics, google-analytics
Centcount Analytics
An open-source web analytics software. Developed by using PHP + MySQL + Redis, Can be easily deployed on your own server, 100% data ownership.
Stars: ✭ 249 (+453.33%)
Mutual labels:  analytics, google-analytics
Komito
🔖 Komito Analytics is a free, open-source enhancement for the most popular web analytics software.
Stars: ✭ 148 (+228.89%)
Mutual labels:  analytics, google-analytics
Magento2 Google Tag Manager
Google Tag Manager is a user-friendly, yet powerful and cost-effective solution that is a must-have integration for every Magento store. It simplifies the process of adding and managing third-party JavaScript tags. With dozens of custom events and hundreds of data points our extensions the #1 GTM solution for Magento.
Stars: ✭ 208 (+362.22%)
Mutual labels:  analytics, google-analytics
App
Just a little analytics insight for your personal or indie project
Stars: ✭ 40 (-11.11%)
Mutual labels:  analytics, google-analytics
Next Ga
Next.js HOC to integrate Google Analytics on every page change
Stars: ✭ 228 (+406.67%)
Mutual labels:  analytics, google-analytics
Ackee
Self-hosted, Node.js based analytics tool for those who care about privacy.
Stars: ✭ 3,140 (+6877.78%)
Mutual labels:  analytics, google-analytics
Stop.Google.Analytics.Ghost.Spam.HOWTO
How to stop Google Analytics "Ghost" Spam using a well curated list of spam referrer domains and web sites. Simple and easy to use with instructions for creating Segments in Google Analytics using our google-exclude files.
Stars: ✭ 21 (-53.33%)
Mutual labels:  analytics, google-analytics
web-analytics-handbook
Handbook - Rendezvous between developers and web data
Stars: ✭ 23 (-48.89%)
Mutual labels:  analytics, google-analytics
Kindmetrics
Kind metrics analytics for your website
Stars: ✭ 57 (+26.67%)
Mutual labels:  analytics, google-analytics
Save Analytics From Content Blockers
A proxy back end for Google Tag Manager & Google Analytics
Stars: ✭ 159 (+253.33%)
Mutual labels:  analytics, google-analytics
Google Analytics Api Symfony
Google Analytics API Symfony Bundle
Stars: ✭ 43 (-4.44%)
Mutual labels:  analytics, google-analytics
React Tracker
React specific tracking library, Track user interaction with minimal API!
Stars: ✭ 191 (+324.44%)
Mutual labels:  analytics, google-analytics
React Spy
A set of utilities for collecting UX-analytics of your React-application (ex: clicks, shows, errors and etc.)
Stars: ✭ 37 (-17.78%)
Mutual labels:  analytics, google-analytics
Gumshoe
A we analytics and event tracking sleuth JavaScript library
Stars: ✭ 39 (-13.33%)
Mutual labels:  analytics, google-analytics
Analytics
UNMAINTAINED! - Complete Google Analytics, Mixpanel, KISSmetrics (and more) integration for Meteor
Stars: ✭ 211 (+368.89%)
Mutual labels:  analytics, google-analytics
dashflare
🕵🏼‍♀️ Open Source and privacy-focused analytics solution. 📊 Advanced monitoring for your website behind Cloudflare
Stars: ✭ 78 (+73.33%)
Mutual labels:  analytics, google-analytics

AWS Web Analytics

Tracking tag library for AWS Pinpoint as an alternative to Google Analytics using AWS Amplify.

Philosophy

Moving to AWS from Google Analytics is a way to maintain your users' privacy. Our blog post, Why you need to move off Google Analytics, explains more about it.

Amplify requires a lot of boilerplate to be able to setup a useful Analytics setup quickly and effectively.

Initialize your account

  1. Create an AWS account
  2. Create your Pinpoint account and Cognito Federated user pool
  3. Add the following tag to your code (with your own values for data-id-pool and data-pinpoint-id):
<script
    data-id-pool="us-east-1:abcd1234-abcd-1234-5678-abcd12345678"
    data-pinpoint-id="1234abcd5678abcd7890abcd1234"
    id="aws-web-analytics"
    src="https://goatandsheep.github.io/aws-web-analytics/dist/aws-web-analytics.js"
    type="text/javascript"
></script>

Click Events

Based on Amplify Page Event Tracking

Use data-aws-analytics- to indicate:

  • on: event listening
  • name: what will analytics event be named?
  • attrs: any needed associated info
<!-- you want to track this button and send an event when it is clicked -->
<button
    data-aws-analytics-on="click"
    data-aws-analytics-name="submitButtonClick"
    data-aws-analytics-attrs="attr1:attr1_value,attr2:attr2_value"
>Continue</button>

If you need other events than click, open a ticket

Custom events

Based on Amplify Analytics record.

window.Amplify.Analytics.record({
    name: 'albumVisit', 
    // Attribute values must be strings
    attributes: { genre: '', artist: '' }
});

AWS Cloud setup

IAM Role

Setup the Federated Cognito pool allowing unauth roles with the following permissions:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "mobiletargeting:PutEvents",
                "mobiletargeting:UpdateEndpoint"
            ],
            "Resource": "arn:aws:mobiletargeting:us-east-1:<account-number>:apps/<pinpoint-project-id>/*"
        },
        {
            "Sid": "VisualEditor1",
            "Effect": "Allow",
            "Action": [
                "mobiletargeting:GetUserEndpoints",
                "mobileanalytics:PutEvents"
            ],
            "Resource": "*"
        }
    ]
}

CloudFormation coming soon...

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].