Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

visitdata

Package Overview
Dependencies
Maintainers
0
Versions
10
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

visitdata

Get traffic source data like Google Analytics

  • 1.3.2
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
274
decreased by-5.52%
Maintainers
0
Weekly downloads
 
Created
Source

visitData

visitData emulates the source, medium, campaign, content and term data just like Google Analytics does it (ga.js).

Since there is no way to extract this information from ga.js directly, you need a library like visitData to do it.

visitData is used on over 40 million page loads every week, just from the CDN:

visitData 40M page loads in a weeks

Questions / Contact

If you have any questions for this, drop me an email at ilkkapel@gmail.com

Include from cdn

:warning: note, the CDN location has changed. Read why from the Announcement.

Here's the file you can include in your web page directly from CDN: https://cdn.jsdelivr.net/npm/visitdata/dist/visitdata.umd.js

Supported module formats

Install with npm

npm install visitdata

Build from source code

clone this repository and then

npm install
npm run build

Usage

<script src="https://cdn.jsdelivr.net/npm/visitdata/dist/visitdata.umd.js"></script>
<script>console.log(visitData.get());</script>

<!-- or, and this you can copy into a javascript console without the <script> tag too for testing -->

<script>
  await import('https://cdn.jsdelivr.net/npm/visitdata/dist/visitdata.umd.js')
  console.log(visitData.get())
</script>

visitData.get() will return an object like

{
  "source": "google",
  "medium": "organic"
}

You can also run visitData.rawData() which will return a lot more information

The results are cached with sessionStorage, so subsequent page views in the same session will return the original result.

Options

optionwhat it doesvalue
cachedisable cachingtrue or false
url_parameterspick custom url parameterse.g. {campaign: ['campaign', 'utm_campaign'], urlparam_custom: ['custom']}

cache

The first time visitdata get() or rawData() is called, the library will store the results into sessionStorage, so that subsequent pageviews in the same session will return the original results from cache.

During testing, or for some other reason, you might want to disable caching. You can do that by calling

visitData.setOption('cache', false)

url_parameters

By default, visitData assumes your URL can have standard UTM parameters such as utm_source, utm_medium, utm_campaign, utm_content and utm_term. However, you might want to pick custom parameters additionally.

For example, let's say you actually want to track a campaign_id instead of utm_campaign and sometimes your medium might be in a parameter called custom_medium. You might do something like this:

visitData.setOption('url_parameters', {
    'medium': ['utm_medium', 'custom_medium'],
    'source': ['utm_source'],
    'campaign': ['utm_campaign'],
    'campaign_id': ['campaign_id']
})

note that the value of each key needs to be a list.

Now, calling visitData.get() will return an object like:

{
  'medium': 'cpc',
  'source: 'google',
  'campaign: 'My campaign',
  'campaign_id': '1241234'
}

FAQs

Package last updated on 17 Sep 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc