kylesloper / netlify-analytics-collector

Github Action to export analytics data from Netlify

Home Page:https://blog.merzlabs.com/posts/netlify-analytics-archive/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Netlify Analytics Collector

⚠️ This tool uses an unofficial/unpublisehd API from Netlify. It may break any time!

Netlify Analytics is awesome but currently it only shows you data for the last 30 days. You can archive analytics into CSV files with this tool. It either runs with NodeJS locally or can be added to Github repos as a Github action that runs on a schedule.

You can find example workflows in .github/workflows.

  • example.yml is set to run every day just before midnight to create 1 a zip file with the analytics of the last 30 days and 2 adds the analytics for the current day to a Google Sheet.
  • summary-release.yml Is a workflow that runs on the first day of each month and creates a new release in the Github repo with an zip with CSV files of the analtics data from the past month.

These are the workflows I came up and you can probably built even cooler workflows. Let me know!

Setup

You need to setup some secrets either as secrets for actions or environment variables.

  • NETLIFY_SITE - You need the API ID of your Netlify site with analytics enabled. You can find it on your sites settings page.
  • NETLIFY_TOKEN - You need a personal access token for your Netlify account to login in. You can generate a token here

For Google Sheets

The example workflow uses this action to update a Google Sheet every day. Please read there how to set the action if you need it.

  • GOOGLE_SERVICE_ACCOUNT_EMAIL
  • GOOGLE_SERVICE_ACCOUNT_PRIVATE_KEY
  • GOOGLE_SPREADSHEET_ID

About

Github Action to export analytics data from Netlify

https://blog.merzlabs.com/posts/netlify-analytics-archive/

License:Apache License 2.0


Languages

Language:JavaScript 97.7%Language:Dockerfile 2.3%