Skip to content

markhuge/react-ga4

Repository files navigation

✨ Looking for sponsors! ✨

Maintainer need help with sponsor!

Han Lin Yap
Han Lin Yap

🚧

React Google Analytics 4

Migrate from old react-ga

// Simply replace `react-ga` with `react-ga4` and remove `ReactGA.pageview()`// import ReactGA from "react-ga";importReactGAfrom"react-ga4";

Install

npm i react-ga4

Usage

importReactGAfrom"react-ga4";ReactGA.initialize("your GA measurement id");

Example

More example can be found in test suite

// Multiple products (previously known as trackers)ReactGA.initialize([{trackingId: "your GA measurement id",gaOptions: {...},// optionalgtagOptions: {...},// optional},{trackingId: "your second GA measurement id",},]);// Send pageview with a custom pathReactGA.send({hitType: "pageview",page: "/my-path",title: "Custom Title"});// Send a custom eventReactGA.event({category: "your category",action: "your action",label: "your label",// optionalvalue: 99,// optional, must be a numbernonInteraction: true,// optional, true/falsetransport: "xhr",// optional, beacon/xhr/image});

Reference

ReactGA.initialize(GA_MEASUREMENT_ID, options)

ParameterNotes
GA_MEASUREMENT_IDstring Required
options.noncestring Optional Used for Content Security Policy (CSP) more
options.testModeboolean Default false
options.gtagUrlstring Default https://www.googletagmanager.com/gtag/js
options.gaOptionsobject Optional Reference
options.gtagOptionsobject Optional

ReactGA.set(fieldsObject)

ParameterNotes
fieldsObjectobject Required

ReactGA.event(name, params)

This method signature are NOT for UA-XXX

ParameterNotes
namestring Required A recommended event or a custom event
paramsobject Optional

ReactGA.event(options)

ParameterNotes
optionsobject Required
options.actionstring Required
options.categorystring Required
options.labelstring Optional
options.valuenumber Optional
options.nonInteractionboolean Optional
options.transport'beacon'|'xhr'|'image' Optional

ReactGA.send(fieldsObject)

ParameterNotes
fieldsObjectobject Required

ReactGA.gtag(...args)

ReactGA.ga(...args)

Extending

import{ReactGAImplementation}from"react-ga4";classMyCustomOverriddenClassextendsReactGAImplementation{}exportdefaultnewMyCustomOverriddenClass();

Debugging

Use Google Analytics Debugger Chrome Extension to see logs

Maintainer

Han Lin Yap

License

MIT

About

React Google Analytics 4

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript100.0%