GoodData
Integrations

Integrating Gooddata with Gatsby

Adding Gooddata to your Gatsby project is a simple, straightforward process. Follow the step-by-step instructions below to start tracking your visitors without compromising their privacy.

Step 1: Copy Your Project ID

Before you begin, you need your unique Gooddata Project ID.

  1. Log in to your Gooddata Dashboard.
  2. Select your project from the sidebar.
  3. Click on the Settings gear icon in the bottom left.
  4. Copy the Project ID or the provided tracking snippet block.

Step 2: Add the Script to Gatsby SSR

To load scripts globally in Gatsby, you use the Server-Side Rendering (SSR) API.

  1. Create a file named gatsby-ssr.js at the very root of your project if it doesn't already exist.
  2. Use the onRenderBody API to inject the script into the head components.
  3. Replace <YOUR_PROJECT_ID> with your actual project ID.
// gatsby-ssr.js
import React from "react";

export const onRenderBody = ({ setHeadComponents }) => {
  setHeadComponents([
    <script 
      key="gooddata" 
      defer 
      src="https://gooddata-fyp.onrender.com/sdk/tracker.js" 
      data-project-id="<YOUR_PROJECT_ID>" 
    />
  ]);
};

Step 3: Verify the Installation

Once you have added the script and published your changes, it's time to test if Gooddata is receiving data.

  1. Open your live website in a new incognito/private browsing window.
  2. Navigate to a few different pages.
  3. Return to your Gooddata Dashboard and go to the Realtime tab.
  4. You should see "1 Active Visitor" and your recent page views populating instantly.

Troubleshooting: If you don't see any data, make sure you don't have an adblocker enabled that might be blocking the script, and ensure you replaced <YOUR_PROJECT_ID> with your actual ID.