Skip to content
You're viewing an older version of this GitHub Action. Do you want to see the latest version instead?
briefcase

GitHub Action

Netlify Analytics Collector

v1.0.1

Netlify Analytics Collector

briefcase

Netlify Analytics Collector

Fetches netlify analytics and uploads it to artifacts

Installation

Copy and paste the following snippet into your .yml file.

              

- name: Netlify Analytics Collector

uses: NiklasMerz/[email protected]

Learn more about this action in NiklasMerz/netlify-analytics-collector

Choose a version

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