Features
Websites & publishingPortfolio engineMedia & deliveryClient deliveryCoursesCommerce & operationsTeam & workflow
FoundationSolutionsPricingDocumentation
About
AboutCommitmentNewsroom
Sign In
ArtInStack

The creative operating system

Product

  • Features overview
  • Websites
  • Portfolio
  • Media
  • Client delivery
  • Courses
  • Commerce
  • Team
  • Solutions

Resources

  • Guides
  • Documentation
  • Platform foundation
  • Pricing
  • Changelog
  • Roadmap

About

  • About
  • Commitment
  • Newsroom
  • Status
  • Talk to us

Customer login

© 2026 ArtInStack. All rights reserved.

Privacy policyTerms of service
All documentation

Products and Selling

  • Digital product templates and delivery
  • Courses as a product
  • Commerce Overview
  • Events as a product
  • Add a Product
  • Digital vs Print Products
  • Connect Payments with Stripe
  • Product detail pages
  • Cart and Checkout
  • Manage Orders and Fulfillment
  • Print on Demand
  • Print-on-Demand Pricing and Margin
  • Donations and fundraising campaigns
  • Affiliate Links
  • Ad Embed Placements
  • Advanced Tracking and Analytics
Blog and Content MarketingNext: Courses and Digital Learning
Documentation/Products and Selling

Advanced Tracking and Analytics

Connect GA4 or Google Tag Manager under Settings → Integrations to track product views, add-to-cart, and completed checkout on your storefront—reconcile revenue with orders in Products and dashboard Analytics.

ArtInStack tracks your entire storefront funnel automatically. By connecting analytics, you can see exactly which high-altitude landscape prints catch the most attention, where collectors drop off in the checkout process, and which gallery styles drive the highest order values.

That reporting lives in your Google Analytics account—not in ArtInStack’s built-in charts. Dashboard home traffic and Analytics → Newsletter / Affiliates / Ad embed measure activity inside ArtInStack. See Dashboard analytics overview for that split.

Which setup is right for your studio?

               Which setup is right for your studio?
                                │
       ┌────────────────────────┴────────────────────────┐
       ▼                                                 ▼
【 Simple & Fast 】                                【 Advanced Control 】
I just want basic stats.                          I run paid ads or Meta pixels.
       │                                                 │
       ▼                                                 ▼
👉 Connect GA4 only                                👉 Connect GTM only

Choose Google Analytics 4 (GA4) only if you want a simple setup to track visitors and page views on your public site right out of the box. You paste your Measurement ID (G-…) in ArtInStack; no Google Tag Manager account required for basic traffic.

Choose Google Tag Manager (GTM) only if you track advanced advertising (Meta Pixel, Google Ads, multiple tags) or want full store funnel and revenue reporting—product views, add-to-cart, and completed purchases. You paste your container ID (GTM-…) in ArtInStack, then wire triggers and tags in tagmanager.google.com.

PathPaste in ArtInStackYou getFunnel + revenue in GA4
Simple & fastMeasurement ID only (G-…)Page views via gtagNo — add GTM later for view_item / add_to_cart / purchase
Advanced controlGTM container ID only (GTM-…)Full control in GTMYes — after you configure tags (Step 4)

Legacy Universal Analytics (UA-…) IDs are not accepted.

What you gain

  • Storefront conversion visibility — see which products and priced photos attract views, what gets added to the cart, and when checkout completes.
  • Marketing accountability — tie ad spend and email campaigns to real purchases in GA4 explorations and Google Ads (when you link accounts).
  • Your data, your tools — exports, audiences, and BigQuery stay in Google; ArtInStack does not resell or aggregate your GA4 reports.

Prerequisites

  • A GA4 property in your Google account (you need this even on the GTM path—GTM forwards events into GA4).
  • Either a web data stream Measurement ID (G-…) or a GTM web container ID (GTM-…)—pick one path from the decision tree above.
  • Dashboard → Settings → Integrations → Analytics
  • For EU/California visitors: enable the cookie banner under Settings → Privacy & security → Privacy — see Privacy & security overview.

Step 1 — Add your ID in ArtInStack

Open Settings → Integrations → Analytics.

FieldWhere to find it in GoogleUse when
Google Analytics 4 Measurement IDGA4 → Admin → Data streams → your web stream → Measurement ID (G-XXXXXXXXXX)Simple & fast path — page views only
Google Tag Manager container IDGTM → Admin → Container → Container ID (GTM-XXXXXXX)Advanced control path — funnels, ads, Meta Pixel, revenue

Validation: IDs must match Google’s format. Invalid values are blocked before save.

If both fields are filled: ArtInStack loads GTM only and ignores the Measurement ID field. The dashboard shows a GTM is active notice. Avoid duplicating GA4 inside GTM (for example a Google Tag plus a second GA4 config tag for the same stream).

Custom domain: the same IDs apply on your subdomain and custom domain. Add every public hostname in GA4 Data stream settings in Google.

Click Save in the Settings header after editing.

Step 2 — Cookie consent (recommended)

When Show cookie consent popup is enabled, analytics scripts load only after a visitor accepts Analytics cookies. ArtInStack uses Google Consent Mode defaults until acceptance.

If analytics IDs are saved but the banner is off, the dashboard shows a reminder—enable it under Settings → Privacy & security → Privacy when you serve EU/California traffic. Details: Privacy & security overview.

Editor preview: analytics does not load on URLs with ?preview=true.

Step 3 — What ArtInStack sends automatically

On your public storefront (not the dashboard), ArtInStack pushes GA4-style ecommerce objects to the browser data layer:

EventWhen it fires
page_viewAutomatic once GA/GTM loads
view_itemVisitor opens a product detail page or a photo/portfolio item with a price
add_to_cartItem successfully added to the cart (see Cart and checkout)
purchaseStripe checkout succeeds in the cart (includes transaction_id and order total; line items may be minimal)

Example shape (your GTM reads the event name and ecommerce object):

event: view_item
ecommerce: { currency, value, items: [{ item_id, item_name, price, quantity }] }

event: add_to_cart
ecommerce: { currency, value, items: [...] }

event: purchase
ecommerce: { transaction_id, currency, value, items?: [...] }

GA4 Measurement ID only: page views reach GA4 through gtag. The three ecommerce events above sit in the data layer—they will not appear in GA4 until you add GTM (Step 4) or equivalent tag wiring.

Step 4 — Wire GTM in your Google account (Advanced control path)

Skip this section if you chose GA4 only and only need page-view traffic for now.

Tag and trigger setup happens entirely in your GTM workspace at tagmanager.google.com—not in the ArtInStack dashboard.

Think of it as two layers: ArtInStack broadcasts named events; GTM listens and forwards them to GA4.

4a — Create Custom Event triggers (one per action)

Repeat for each event name. Names must be exact—lowercase, underscores, no spaces.

  1. GTM left sidebar → Triggers → New.
  2. Trigger Configuration → Custom Event.
  3. Fill in:
FieldProduct viewAdd to cartPurchase
Event nameview_itemadd_to_cartpurchase
Use regex matchingUncheckedUncheckedUnchecked
This trigger fires onAll Custom EventsAll Custom EventsAll Custom Events
  1. Name the trigger (for example CE - view_item) → Save.

Create three triggers total—one per row.

4b — Create GA4 Event tags (one per action)

GTM needs one GA4 Event tag per event. A single tag for view_item alone will not report cart or purchase activity.

Repeat New tag three times:

TagTag typeEvent nameTriggerSuggested tag name
1Google Analytics: GA4 Eventview_itemCE - view_itemGA4 Event - View Item
2Google Analytics: GA4 Eventadd_to_cartCE - add_to_cartGA4 Event - Add to Cart
3Google Analytics: GA4 EventpurchaseCE - purchaseGA4 Event - Purchase

For each tag:

  1. Tags → New → Tag Configuration → Google Analytics: GA4 Event.
  2. Measurement ID — enter your G-… stream ID, or choose your existing Google Tag / Configuration tag from the dropdown (recommended for tags 2 and 3).
  3. Event Name — same string as the trigger (view_item, add_to_cart, or purchase).
  4. Send Ecommerce data — turn On and set the source to Data layer (see callout below).
  5. Triggering — select the matching Custom Event trigger from 4a.
  6. Save.

Publish the GTM container when finished (Submit → Publish).

Critical: turn on ecommerce data from the data layer

By default, GTM may send only the event name (view_item, purchase, etc.)—not prices, currency, line items, or transaction IDs. Your GA4 monetization reports will show activity but $0.00 revenue until you authorize the payload.

For each ecommerce GA4 Event tag (view_item, add_to_cart, purchase):

  1. Open the tag in GTM.
  2. Expand More Settings → Ecommerce.
  3. Check Send Ecommerce data.
  4. Set Data Source to Data Layer.

This lets financial reporting mirror your raw traffic—order values, product revenue, and conversion totals populate correctly in GA4.

How to verify it's working

The test run: In GTM, click Preview (top right), enter your storefront URL (subdomain, custom domain, and complete a quick walk-through—view a priced photo or product, add to cart, and run a test checkout if Stripe is in test mode.

The confirmation: In the Tag Assistant timeline (the debugging tab GTM opens), you should see:

  • view_item when viewing a product or priced image block
  • add_to_cart after a successful cart add
  • purchase with a green checkmark on your GA4 Event tag once payment clears

Select each event in the left timeline and confirm Tags Fired for the matching GA4 Event tag.

Optional: GA4 Realtime → confirm activity under your property (use a dev property or separate stream when testing on localhost so production data stays clean).

Quick reference

QuestionAnswer
Simple stats vs full funnel?GA4 only = page views; GTM only = funnel + revenue (after Step 4)
Where do I paste G-… or GTM-…?Settings → Integrations → Analytics
Where do I create triggers and tags?Your GTM container at tagmanager.google.com
Platform traffic vs my GA4?Dashboard analytics overview
Cookie bannerPrivacy & security overview
Checkout flow contextCart and checkout

Troubleshooting common setup issues

My sales events show up, but revenue reads $0.00?

You likely skipped the data layer mapping. Re-open each ecommerce tag in GTM, expand More Settings → Ecommerce, check Send Ecommerce data, and set Data Source to Data Layer. Publish the container again.

I filled out both the GA4 and GTM boxes. Will it double-count visits?

No. The moment you save a GTM container ID, ArtInStack uses GTM as the primary source and safely bypasses the direct GA4 loader—optimizing page speed and avoiding duplicate injection. Keep your Measurement ID inside GTM tags only; do not add a second standalone GA4 config tag for the same stream.

Events never appear in GA4, but GTM Preview looks fine

Confirm you Published the GTM container after editing tags. Allow a few minutes, then check GA4 Realtime or standard reports—not only Tag Assistant.

Nothing loads after I save my ID

If Show cookie consent popup is on, analytics scripts load only after the visitor clicks Accept on the cookie banner. Test in a private window after accepting cookies.

You're done when

  • You chose GA4 only or GTM only and saved a valid ID under Integrations → Analytics.
  • With cookie banner on: after Accept, the browser loads googletagmanager.com (Network tab).
  • GTM path: Tag Assistant shows view_item, add_to_cart, and purchase with GA4 tags fired; ecommerce tags have Send Ecommerce data → Data Layer.
  • GA4 reports reflect traffic (and revenue on the GTM path) after publish.