https://github.com/firstandthird/ga-track
A javascript click tracking library for Google Analytics
https://github.com/firstandthird/ga-track
front-end
Last synced: 2 months ago
JSON representation
A javascript click tracking library for Google Analytics
- Host: GitHub
- URL: https://github.com/firstandthird/ga-track
- Owner: firstandthird
- License: mit
- Created: 2011-10-28T01:02:53.000Z (over 14 years ago)
- Default Branch: master
- Last Pushed: 2023-10-28T08:41:55.000Z (over 2 years ago)
- Last Synced: 2026-04-03T04:53:38.111Z (3 months ago)
- Topics: front-end
- Language: JavaScript
- Homepage:
- Size: 1.24 MB
- Stars: 1
- Watchers: 5
- Forks: 1
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# GA-Track
[](https://travis-ci.org/firstandthird/ga-track)

Google Analytics Tracking helper with support for GTag, ga and _gaq.
## Installation
```sh
npm install ga-track
```
## Usage
> Make sure you also include your Google Analytics script as shown [in the example](./example/index.html#L7).
```js
import 'ga-track';
// or
import GATrack from 'ga-track';
```
Any element with `data-ga-track` as an attribute, will be tracked on click. Here's a quick reference:
| Attribute | Description | Default |
|------------------------|-----------------------|---|
| `data-ga-track` | Needed for autotracking. If a value is given it serves as category. | `ga-track` |
| `data-ga-track-label` | Label of the event. | Element's `href` |
| `data-ga-track-action` | Action of the event. | Element's `textContent` |
| `data-ga-track-href` | Should this be `false` the link **won't** be navigated to. Otherwise `ga-track` will wait till the track happens and then navigates. | Element's `href` |
## Methods
GATrack exposes a few method being the following two the most importants. It is a safe call so if Google Analytics gets blocked by an adblocker it won't throw any exceptions due to not being present.
### sendEvent(category, action, label, callback, timeout)
Manually sends an event to Google Analytics.
#### Parameters:
`category` - {string} - Event's category.
`action` - {string} - Event's action.
`label` - {string} - Event's label.
`[callback]` - {Function} - Callback to be called once the event has been tracked.
`[timeout=1000]` - Timeout after which the callback will be called if it didn't finish.
### sendData()
Safely pass data to Google Analytics:
```javascript
GATrack.sendData('set', 'dimension2', 'member');
```
## Example
See the [complete example](./example/index.html).
```html
...
...
Click
Me
One
Time
GaTrack.track([
{
element: 'span',
category: 'span',
label: 'click'
}
])