How to send data from your JavaScript website to Google Analytics 4

Understanding your online audience is a crucial objective for website owners. Over the years, Google Analytics has proven to be a valuable tool in achieving this goal. With the introduction of Google Analytics 4 (GA4), its latest iteration, the capabilities have been further enhanced. In this comprehensive tutorial, we will guide you through the process of sending data from your JavaScript-based website to GA4. The tutorial covers essential steps, including setting up your GA4 account, integrating GA4 seamlessly with your website, and effectively sending custom events and data.

Understanding Google Analytics 4 and its benefits

Before we look into the details of how to send data to GA4, let's first understand why you might want to. GA4 is the latest version of Google Analytics and is designed to provide website owners with more in-depth insights into their online audiences. With GA4, you can get a better understanding of how users interact with your site, what actions they take, and how you can optimize your website to improve their experience.

It represents a significant evolution from its predecessor, Universal Analytics (UA), introducing advanced features and a more comprehensive approach to data analysis and measurement. GA4 is designed to provide businesses with deeper insights into user behavior, enhance cross-platform tracking, and adapt to changing privacy standards. GA4 introduces several new features and changes compared to UA, and it has implications for Google Tag Manager (GTM) as well.

GA4 introduces a different data model called "event-driven" tracking, which focuses on tracking user interactions as events and allows for more flexibility and customization in data collection. It also provides enhanced cross-platform tracking, allowing you to gather data from websites, mobile apps, and other digital platforms into a single property.

GTM is a tag management system developed by Google that allows you to manage and deploy various tracking tags and code snippets on your website without the need for manual coding. GTM works with both GA4 and Universal Analytics, but there are some differences in how it interacts with each version.

It's worth noting that GA4 uses a different measurement model than Universal Analytics, so the implementation and configuration of tags in GTM may differ between the two versions. GA4 relies on events and parameters, while Universal Analytics uses hits and fields. Therefore, if you're transitioning from Universal Analytics to GA4, you may need to update your GTM container and tags accordingly.

Key features of Google Analytics 4

One of the key features of GA4 is its ability to unify data across devices and platforms. This means that you can get a more complete picture of your audience's behavior, regardless of whether they are using a desktop computer, a tablet, or a mobile phone. This is particularly important in today's world, where users are increasingly using multiple devices to access the internet. Some other key features of GA4 include:

  • A unified measurement model that provides consistent data across devices and platforms
  • A dedicated real-time report that displays live data about user activity on your site or app.
  • Machine learning-powered insights that help you better understand your audience
  • Customizable events and parameters that allow you to track specific actions and behaviors on your website
  • Advanced analysis tools that enable you to get deeper insights into your audience's behavior
  • Enhanced data security and privacy controls

GA4 offers enhanced eCommerce tracking, which allows you to monitor and analyze metrics from various stages of the customer journey within your eCommerce site.

GA4 also supports server-side tracking, allowing you to send data directly from your server-side environment to GA4. Server-side tracking offers several benefits, including increased data accuracy, enhanced privacy compliance, and flexibility in data collection.

Why upgrade to Google Analytics 4?

Upgrading to GA4 brings a host of benefits, including:

  • More granular data and insights into your website's performance
  • Machine learning algorithms to provide data-driven attribution modeling.
  • Customizable event tracking that allows you to track specific actions and behaviors on your website
  • Enhanced data privacy controls that help you comply with privacy regulations
  • Improved cross-device and cross-platform measurement capabilities
  • Integration capabilities with Google Ads and Google BigQuery, allowing you to enhance your data analysis, reporting, and marketing optimization efforts.

One of the biggest benefits of GA4 is its ability to provide more accurate and actionable insights into your audience's behavior. By using machine learning algorithms, GA4 can identify patterns and trends in your audience's behavior that you might not have noticed otherwise. This can help you identify areas where you can make improvements to your website and increase conversions.

Another important benefit of GA4 is its enhanced data privacy controls. With GA4, you can be sure that your data is being collected and stored in a way that complies with privacy regulations. This is particularly important in today's world, where data privacy is a major concern for many users.

Making the transition to GA4 is a wise decision for website owners seeking a comprehensive understanding of their audience's behavior and a boost in their website's performance. If you're looking for guidance on migrating from Universal Analytics to GA4, you can find valuable insights and recommendations about transitioning in this  GA4 migration guide.

Setting up your google analytics 4 account

The first step to sending data from your JavaScript website to GA4 is to create your GA4 account, if you already have one you can skip to the next step.

Creating a new Google Analytics 4 property

Creating a new Google Analytics 4 property is an essential step in setting up your account. It is the first step towards tracking your website's traffic and understanding your audience. To create a new GA4 property, follow these steps:

  1. Sign in to your Google Analytics account. If you don't have one, create a new account.
  2. Click on "Admin" in the bottom left-hand corner of the screen to access the Admin panel.
  3. Under "Account", select the account you want to create a new property for, or create a new account by clicking the "+Create Account" button.
  4. Under "Property", select "Create Property".
  5. Enter a name for your new property. It's a good idea to choose a descriptive name that reflects the website or app you're tracking.
  6. Select your reporting time zone and currency. This will determine the time zone and currency used for your reports.
  7. Click "Create".

Configuring your data streams

After you've created a new property, the next step is to configure your data streams. A data stream is a source of data that you want to track, such as a website or a mobile app. Here's how:

  1. In the GA4 property, click on "Data Streams".
  2. Click the "+ Add Stream" button.
  3. Enter a name for your data stream. This should be a descriptive name that reflects the source of data you're tracking.
  4. Select "Web" as the data stream type if you're tracking a website.
  5. Enter your website's URL. Make sure to enter the full URL, including the "http://" or "https://" prefix.
  6. Click "Create Stream".
  7. Once created you’ll find all your Data stream information that is required to connect your site to GA4, like the Measurement ID and Measurement API keys.

Implementing the global site tag (gtag.js)

Once you've created a new property and configured your data streams, the next step is to implement the Global Site Tag (gtag.js) on your website. The gtag.js is a JavaScript library that allows you to send data to GA4. Here's how:

  1. Copy the gtag.js code from your GA4 property's data stream settings. You can find this code under "Tagging Instructions" in the "Data Streams" section of your GA4 property.
  2. Add the gtag.js code to the header of your website's HTML. You should add the code between the <head> and </head> tags.

Now that you've set up your GA4 account and implemented the gtag.js, you're ready to start sending data from your JavaScript website to GA4. This process involves adding the GA4 tracking code to your website, customizing it to suit your tracking needs, and verifying that the integration is working as expected.

Customizing the tracking code for your needs

Once you've added the tracking code to your website, you can customize it to suit your tracking needs. GA4 provides several event types that you can use to track specific user actions, such as page views, button clicks, and form submissions. Here are some examples of how to customize the tracking code:

  • To track page views, add the following code:
gtag('event', 'page_view', {'page_path': '/example-page.html'});
  • To track button clicks, add the following code:
gtag('event', 'click', {'event_category': 'button', 'event_label': 'example button'});
  • To track form submissions, add the following code:
gtag('event', 'submit', {'event_category': 'form', 'event_label': 'example form'});

By customizing the tracking code, you can gain insights into how users interact with your website and optimize your website's performance accordingly.

Verifying the integration

The last step in integrating GA4 with your connected website is to verify that the tracking code is working as expected. You can do this by following these steps:

  1. Open your connected site.
  2. Right-click on the page and select "Inspect".
  3. Click on the "Console" tab.
  4. Enter "gtag" in the command line and press Enter.
  5. If GA4 is correctly integrated on the webpage, you will see a list of available methods.

Verifying the integration ensures that GA4 is collecting accurate data on your website's performance and user behavior. By regularly monitoring your website's analytics, you can make data-driven decisions to improve your website's user experience and achieve your business goals.

Tracking user interactions and conversions

GA4's Enhanced Measurement feature can automatically track certain common events on your website, such as page views, outbound link clicks, and scroll depth. By enabling Enhanced Measurement, you can gather valuable data without requiring additional code implementation.

By tracking user interactions and conversions with GA4, you can get a better understanding of how users engage with your website and what actions lead to conversions. Some examples of user interactions and conversions you might want to track include:

  • Button clicks
  • Form submissions
  • Scroll depth
  • Page views
  • Product purchases

Additionally, you can use Custom Dimensions to provide a way to collect and analyze data beyond the default dimensions available in GA4. You can use them to segment, filter, and analyze your data based on specific criteria that are important to your business, examples include creating a custom dimension to distinguish between different types of users, such as "new" and "returning."


In order to troubleshoot the analytics implementations and monitor events from your website as they are being collected you can use DebugView. DebugView provides real-time visibility into the events and user properties captured by Analytics, enabling you to troubleshoot tag installation issues and analyze the live activity of external users. Enabling debug mode is necessary to utilize DebugView effectively.


Google Analytics 4 is a powerful tool for understanding your website's performance and improving your users' experience. With GA4, you can get in-depth insights into your online audience, track custom events and data, and optimize your website for improved conversions. By following the steps outlined in this tutorial, you can start sending data from your JavaScript website to GA4 today.

Don't want to go through the pain of direct integration? RudderStack's JavaScript SDK makes it easy to send data from your JavaScript website to Google Analytics.