Dataform Tips – Managing Column Descriptions

Many of us consider writing documentation a bit of a dull task. Organizations make it even worse by hoarding the documentation in centralized but isolated systems such as Confluence. This approach can easily lead to a situation where writing documentation becomes a project of its own.  Ideally, the documentation would evolve continuously whenever the queries […]

Dataform Tips – Managing Column Descriptions Read More »

how to create a GA4 ecommerce table in BigQuery - header image

GA4 BigQuery – Ecommerce Table with Item List Attribution

When you start working with GA4 data in BigQuery, you’ll hear that you should avoid connecting your dashboards directly to the raw data export tables. The reasons behind this include query performance and cost optimization. The need for optimizing your data sources is especially true when working with item-level ecommerce data. In this post, I’ll

GA4 BigQuery – Ecommerce Table with Item List Attribution Read More »

Why you should avoid using the session_start and first_visit events in GA4

The recent fix by Google makes the session_start and first_visit more consistent by including the event parameters, such as the traffic source details, that used to be missing. However, there are still many issues related to these two events. At best, they are just a bit off, while in worst cases, they are complete junk.

Why you should avoid using the session_start and first_visit events in GA4 Read More »

dataform trigger overview

Run Dataform queries immediately after the GA4 BigQuery export happens

The daily BigQuery export schedules for GA4 are notoriously random. Sometimes the data is processed in the early-morning hours, sometimes at noon, and sometimes not even during the next day. In this article, I’ll walk you through how to set up a Cloud Workflow that compiles and executes the selected queries in your Dataform project.

Run Dataform queries immediately after the GA4 BigQuery export happens Read More »

Pull visitor data through server-side Tag Manager to the dataLayer

In this blog post, I’ll share a simple server-side GTM client template that you can use to pull visitor user properties back to the website to the client device. You can then push the data to the dataLayer to make it easily accessible for client-side tracking or personalization use cases.

Pull visitor data through server-side Tag Manager to the dataLayer Read More »

BigQuery event stream using Server-side GTM

Send events from Server-side Tag Manager to BigQuery

In this post, I will go through how to set up a simple event stream from server-side Tag Manager directly to BigQuery. The idea is to keep the setup as simple as possible. That way, it’s suitable for different kinds of experimentation and debugging needs. Post updates Things to consider when sending data to BigQuery

Send events from Server-side Tag Manager to BigQuery Read More »

Scroll to Top