Now on Google Cloud Marketplace

Set Your
GA4 Data Free.

One transformation. Every tool. Zero complexity.
Decode GA4 automatically flattens BigQuery's nested event structure
into clean, analysis-ready tables — with zero maintenance.

18 lines 3 lines of SQL
5 min to deploy
Zero maintenance forever

Works with the tools you already use

The Problem

GA4's BigQuery Export
is a Maze.

Every team working with GA4 in BigQuery hits the same wall. The data is technically there — but structurally hostile. Accessing a single field like page_location requires a full UNNEST subquery. Multiply that by every field your analysts need.

Nested Queries on Every Field

GA4's event_params column is a nested array. Extracting any field — page URL, session ID, custom parameters — requires a correlated UNNEST subquery. Repeated. For every. Single. Field.

Pipelines That Break Without Warning

GA4's schema evolves constantly. New event types, renamed parameters, and structural changes silently break custom SQL transformations. Every dbt model and Dataform workflow becomes a maintenance burden.

Weeks of Engineering Before Any Insight

Before analysts can answer a single business question, engineers spend weeks building the plumbing. Custom transformations are brittle, hard to test, and solve a problem that isn't unique to your organization.

See the Difference

From 18 Lines to 3.

Accessing page_location and page_title in raw GA4 BigQuery requires correlated UNNEST subqueries for each field. Decode Data transforms those nested arrays into direct columns — so your query becomes exactly what you'd expect it to be.

Before — Raw GA4 BigQuery
SELECT
  event_timestamp,
  (SELECT value.string_value
   FROM UNNEST(event_params)
   WHERE key = 'page_location')
   AS page_location,
  (SELECT value.string_value
   FROM UNNEST(event_params)
   WHERE key = 'page_title')
   AS page_title
FROM `project.analytics_x.events_*`
WHERE event_name = 'page_view'
14 lines UNNEST repeated per field Wildcard events_* table
After — Decode Data
SELECT
  event_timestamp,
  event_param.page_location,
  event_param.page_title
FROM `project.decode_analytics_x.events`
WHERE event_name = 'page_view'
5 lines Direct dot-notation access Single clean table
Correlated subquery needed for every single parameter
events_* wildcard scans every partition — expensive
event_param.field — simple dot notation, every time
One predictable table per property — no wildcards, no surprises
How It Works

Deploy once.
Forget forever.

Three steps from setup to clean data. No custom SQL. No brittle pipelines. No maintenance contracts.

  1. Connect in 5 Minutes

    Deploy Decode GA4 directly from the Google Cloud Marketplace with a single command. Point it at your GA4 BigQuery export project and it handles the rest. No infrastructure setup, no configuration files, no custom code.

    Google Cloud Marketplace One-command deployment
  2. Transform Automatically

    Decode GA4 processes your GA4 export, flattening nested event_params into direct columns. It uses metadata-driven incremental processing — each partition is processed exactly once. When GA4 changes its schema, Decode GA4 adapts automatically. No manual updates, ever.

    Automatic schema evolution Incremental processing
  3. Query Anything

    Your transformed data lives in BigQuery as clean, flat tables — queryable by any tool in your stack. Connect Looker Studio, dbt, Dataform, Tableau, Power BI, or any BigQuery-compatible tool. Need cross-cloud? Export to AWS S3 or Azure Blob Storage as Parquet files.

    BigQuery native Parquet export Any BI tool
Why Decode Data

The USB-C
for Your Data Pipeline.

One universal interface between GA4 and every tool your team uses. Like USB-C replaced a drawer full of adapters, Decode GA4 replaces the mess of custom transformations.

Automate Everything

Extraction, flattening, incremental loading — fully automated from day one. Set it up once and your pipeline runs without intervention.

Schema Evolution

GA4 changes its schema without notice. Decode GA4 adapts automatically — no broken pipelines, no emergency fixes, no frantic Slack messages at 2am.

Native BigQuery

Built entirely within Google BigQuery. No external compute, no data leaving your project, no additional infrastructure to manage or secure.

Cross-Cloud Ready

Export transformed data as compressed Parquet files to Google Cloud Storage, Amazon S3, or Azure Blob Storage. Query from DuckDB, Motherduck, or any external system.

Cost Optimization

Parquet compression dramatically reduces storage costs. Partition pruning eliminates expensive full-table scans. Many teams see 40–70% lower BigQuery costs immediately.

Zero Maintenance

Deploy once, never touch again. No dbt model updates when GA4 changes. No custom SQL to maintain. No brittle pipeline to babysit. Just clean data, always.

Built-in Enrichments

Richer data,
out of the box.

Every Decode Data transformation automatically adds fields that GA4's raw export leaves behind — zero configuration required.

  • Locally timestamped events Supports actual time-of-day activity analysis
  • Geolocated events Supports map-based data exploration and reporting
  • Automatic parameter propagation Seamlessly include new parameters and properties without configuration changes
  • Single source of truth Build multiple external tables on one consistent data source, eliminating duplication
  • Automatic schema evolution Seamlessly include new fields and sub-fields without any configuration changes
  • Process extensibility Trigger any downstream process or custom notification with a PubSub message upon new data
  • Logic extensibility Configuration-based extension of transformation logic and table creation
Integrations

One transformation.
Every tool.

Decode GA4 outputs standard BigQuery tables — readable by every analytics tool without connector configuration or vendor lock-in.

dbt dbt
Dataform Dataform
SQLMesh SQLMesh
Looker Studio Looker Studio
Tableau Tableau
Power BI Power BI
Amazon S3 Amazon S3
Azure Blob Storage Azure Storage
Google Cloud Storage Google Cloud
Pricing

Start free.
Scale as you grow.

Available on Google Cloud Marketplace. Usage-based pricing — pay for what you process. No per-seat fees, no hidden compute charges.

Pay Per Use

Pricing is 100% variable — you pay for the exact bytes of GA4 data processed, nothing more. Process 1 MiB per day and pay just $1.50/month.

Sites with fewer than 10,000 monthly sessions typically process 50–150 MB of GA4 data per month — around $3–8. Less than a coffee.

Monthly Estimate
~$7 / month
Based on 0.1 GiB/month
Full breakdown →

No subscriptions. No per-seat fees. Volume discounts apply automatically at each tier — billing appears on your existing Google Cloud invoice.

Get Started on Google Cloud →
Volume Pricing
0 to 1 GiB $50 / GiB
1 to 5 GiB $10 / GiB
5 to 25 GiB $5 / GiB
25 to 100 GiB $3 / GiB
100 to 250 GiB $2 / GiB
250 to 500 GiB $1 / GiB
500 GiB and above $0.50 / GiB
No trial period needed — deploy and see before committing
Invoiced via your existing Google Cloud billing
Cancel any time — your data stays in your GCP project
What is Decode Data?

Built by data engineers,
for data engineers.

The Product

Decode GA4 is a BigQuery-native data transformation utility. It automatically extracts and flattens Google Analytics 4's complex nested event data structure into clean, analysis-ready BigQuery tables. The core innovation is metadata-driven incremental processing — each data partition is processed exactly once, and the system automatically adapts when GA4 changes its schema.

Why Decode Data?

Decode Data is a smart utility that connects GA4 to any downstream tool without custom SQL, without brittle pipelines, and without ongoing maintenance. One deployment replaces weeks of engineering work.

Who It's For

Data Engineers: Deploy once, never maintain again — automatic schema evolution eliminates pipeline breaks. Analytics Engineers: Clean, analysis-ready data in minutes rather than weeks of SQL development. Data Analysts: Simple dot-notation SQL instead of complex UNNEST subqueries. VPs and Directors: Immediate cost reduction and faster time-to-insight.

FAQ

Frequently Asked Questions

How do you install Decode GA4?

Decode GA4 is distributed via Google Cloud Marketplace and installed via our installer app. More details are in the quickstart documentation, or you can view the marketplace listing directly here.

How much does Decode GA4 cost?

Decode GA4 pricing is usage-based per GiB, with no monthly or annual subscriptions. It is based on a simple sliding scale, derived from total monthly GiB volume by GA4 property, which can be viewed here. A calculator is also available here to estimate monthly and backfill costs.

Is there a trial period?

There is no trial period as there is no monthly fee and no fee to install Decode GA4. Cost is only incurred when using Decode GA4 to transform and export raw source GA4 data.

Do I need to use Dataform or dbt?

You do not, however the output events table is a 'modelling-ready' event data source, so further modelling and integration would be expected. If you do want to use the outputs of Decode GA4 in a downstream transformation tool, it is recommended to set the destination_dataset_id option upon installation.

This will result in a segregated dataset containing only the transformed GA4 event data and statistics, to be used as a clean input to the subsequent process.

Execution of the RUN function can then be incorporated into the pre-operations for the tool you are using, which is implemented slightly differently in different tools as outlined in the docs.

Will it alter my raw data in any way?

No. Our decoder adds a new dataset to your BigQuery project that you can access directly for downstream analysis, but you can always go back and reference your raw data or work on that data directly.

What happens to my data if I stop using Decode Data's Decoder?

The historical data that you have decoded remains intact and accessible in your BigQuery, but if you lose permissions to the Decode GA4 proprietary functions, it will cease to decode any future data.

Your GA4 data is already in BigQuery.
Let's set it free.

Deploy in 5 minutes on Google Cloud Marketplace. Free tier available. No credit card required for the first million events.