# Google Merchant Center, GA4 and Google Ads in CloudCart: setup guide

Connect Google Merchant Center, GA4, Tag Manager, Search Console and Google Ads to your CloudCart store: which field, which ID and how to test it.

Source: https://cloudcart.com/en/blog/google-shopping-ads-analytics · CloudCart · 2026-11-06

In short: in CloudCart every Google tool connects from Apps with one ID and no theme edits. Google Merchant Center needs a Google sign-in and your Merchant Center ID, GA4 needs the Measurement ID G-…, Tag Manager needs GTM-…, Search Console needs the full meta tag, and remarketing needs AW-…. Analytics and Tag Manager are in every plan.

Most guides that rank for "Google Merchant Center" describe Google's screens and stop at "install your platform's plugin". This one gives the exact app, field and format in the CloudCart admin, how to test it, and what changes for a store selling in Bulgaria or across the EU. CloudCart facts come from the platform documentation and the [pricing page](https://cloudcart.com/en/pricing), Google's rules from Google's help centers.

What to read in the reports once everything is connected is covered in the separate guides to [GA4 and Google Tag Manager for an online store](https://cloudcart.com/en/blog/ga4-tag-manager-online-store) and [Google Search Console for an online store](https://cloudcart.com/en/blog/google-search-console-online-store).

## Which Google tools connect to CloudCart

CloudCart, the Bulgarian ecommerce platform, has a separate app for each of the five Google tools a store uses most: Analytics, Tag Manager, Search Console, Merchant Center (the Google Shopping app) and Google Ads. Each app keeps its own ID, and the store places the script or meta tag on every page by itself. All of the platform's connections by category are on the [integrations page](https://cloudcart.com/en/integrations).

| Tool | Path in the admin | What you paste | What it does | Plan (/pricing) |

| Google Analytics 4 | Apps → Google Analytics → Settings | Measurement ID G-XXXXXXXXXX | Visitors, channels, funnel, purchases | Every plan |

| Google Tag Manager | Apps → Google Tag Manager → Settings | Container ID GTM-XXXXXXX | All tags in one place | Every plan |

| Data Layer | Apps → Data Layer | Nothing, install only | Product and order data for GTM | No plan limit |

| Google Search Console | Apps → Google Search Console → Settings | The whole google-site-verification meta tag | Proves you own the site | No plan limit |

| Google Shopping (Merchant Center) | Apps → Google Shopping → Settings | Sign in with Google + Merchant Center ID | Sends the catalog to Merchant Center | Products in the feed: 100 / 2,000 / 7,500 / 10,000 |

| Google Dynamic Remarketing | Apps → Google Dynamic Remarketing → Settings | Google Ads ID AW-… + conversion label | Remarketing with the products people viewed | Depends on the plan: if it is missing from the app catalog, your plan does not include it |

The feed limits are for Baby Pack, Starter Pack, CC Pro and CC Master in that order. An app your plan does not include does not appear in the app catalog.

> Store for €1 GA4 and Tag Manager from day one, €1/month for the first 3 months Google Analytics and Google Tag Manager are ticked in all four plans, so you measure sales from the first order, and new stores pay €1 a month for the first three months of any plan. Create a store for €1 →

## In what order to connect Google to your store

The safest order is: cookie banner, Search Console, GA4, Tag Manager, Google Shopping and remarketing last. Each tool then receives data that already works, and no ad starts before measurement does.

- Cookie banner in Apps → GDPR → Cookies, with Consent Mode v2 if you use it.

- Search Console: verify the domain and submit sitemap.xml.

- GA4: paste the Measurement ID and place a test order.

- Tag Manager and Data Layer, only for tags beyond the built-in ones.

- Google Shopping: connect Merchant Center and send the catalog.

- Google Ads: import the purchase from GA4 and turn on remarketing.

## How to connect Google Analytics 4 to CloudCart

GA4 connects to CloudCart through one field: Google Analytics code in Apps → Google Analytics → Settings, where you paste the Measurement ID in the format G-XXXXXXXXXX. The store recognises GA4 by the G- prefix and sends 12 shopping and account events by itself.

- Get the Measurement ID. In GA4 open Admin → Data streams → your store's web stream. The ID sits top right and starts with G- ( Google Analytics Help: find your Measurement ID ).

- Install the app. In the CloudCart admin: Apps → Google Analytics → install. The app has two tabs, Overview and Settings.

- Paste the ID. In Settings click Edit, paste the ID into Google Analytics code and save. There is no version selector.

- Enable the app. The Enable / Disable button is on the app screen. If you enable it with an empty field, CloudCart shows "Google analytics tracking ID is required".

- DEBUG mode for the test. Turn on the DEBUG mode switch to see events in GA4 DebugView. Turn it off after the check.

- Test order. Place an order from a private window and look for purchase in GA4 → Realtime.

The third field, Measurement Protocol API secret, is optional and only matters for a mobile app or a headless store that sends purchases from the server.

### Which events CloudCart sends to GA4

CloudCart sends from the browser view_item_list, view_item, add_to_cart, remove_from_cart, add_to_wishlist, view_cart, begin_checkout, add_shipping_info, add_payment_info, purchase, login and sign_up. Search engine bots and admin previews ("view as customer") are left out so they do not distort the numbers.

- A purchase counts once. If the customer reloads the thank-you page, no second purchase fires.

- refund is not sent. A refund on an order does not reach GA4 automatically.

- select_item is not sent. GA4 gets the product list and the product page, but not the click on a product card in the list.

Important: if the field still holds an old UA-… code from Universal Analytics, replace it with the GA4 Measurement ID, because Universal Analytics no longer collects data. One field holds one code, so running two Measurement IDs at once is done through Tag Manager.

## How to add Google Tag Manager to your store

Google Tag Manager goes into Apps → Google Tag Manager → Settings, in the field "Insert the code provided by Google Tag Manager", as a Container ID in the format GTM-XXXXXXX. The store places the GTM code in <head> and the <noscript> part at the start of <body> on every page.

- Create a container. In tagmanager.google.com create a Web container and copy the ID that starts with GTM- .

- Install the app. Apps → Google Tag Manager → Settings.

- Paste the ID. Only the ID, not the container snippet. CloudCart checks the format: a wrong one shows "The Google Tag ID is invalid", an empty field shows "Please add your Google Tag ID".

- Install Data Layer. Apps → Data Layer . It has no settings: install it and the data starts flowing. Without it GTM only gets page views.

- Check with Preview. Start Preview in tagmanager.google.com and open the store. Preview mode works on the CloudCart storefront with no extra setup.

Data Layer pushes a cc_page_data object on every page with the page type and its data (product, category, cart, order), plus cc_customer_data for a logged-in customer. Ecommerce events follow the GA4 naming.

For a new store the app is enough: one field and 12 ready events. Tag Manager pays off when you need custom events, several Measurement IDs or a marketer managing several pixels.

Important: pick one way to run GA4. If the Google Analytics app is on and GTM also has a GA4 tag with the same Measurement ID, every purchase is counted twice. The same applies to Google Dynamic Remarketing next to a remarketing tag in GTM.

## How to verify your site in Search Console

Search Console verification in CloudCart uses the "HTML tag" method: you copy the whole meta tag from Google and paste it into Apps → Google Search Console → Settings. CloudCart supports only this method and places the tag on every page of the store.

- Add the property. In search.google.com/search-console choose "URL prefix" and enter the store address with https:// .

- Choose "HTML tag". Copy the whole line  ( Search Console Help: verify site ownership ).

- Paste the tag in CloudCart. Apps → Google Search Console → Settings → Edit. The field takes the whole tag and checks on save that it is valid HTML.

- Enable the app and save. The tag is on the storefront only while the app is active.

- Verify in Google. Go back to Search Console and click "Verify".

- Submit the sitemap. In Search Console → Sitemaps enter the store's sitemap.xml. CloudCart updates it by itself when you add a product, category or blog post ( SEO in CloudCart ).

The most common mistakes: pasting only the content value, which Google rejects, and disabling the app, which removes the tag and the verification. Queries, clicks and indexing are read in Search Console itself; see [Search Console for an online store](https://cloudcart.com/en/blog/google-search-console-online-store) and the [online store SEO checklist](https://cloudcart.com/en/blog/online-store-seo).

## How to connect Google Merchant Center and Google Shopping

Google Merchant Center connects in Apps → Google Shopping → Settings with the Sign in with Google button and your Merchant Center ID. CloudCart then pushes the catalog straight into Merchant Center and shows each product's status in the admin, so you do not upload a feed file by hand.

- Sign in with Google. Click Sign in with Google and grant access. The connection is for the whole store, so other admins do not reconnect.

- Merchant Center ID. Paste your Merchant Center account number. The field is required.

- Site verification. While the switch "The site is verified on Google Shopping" is off, paste the HTML tag from Merchant Center. CloudCart places it on the storefront.

- Statuses and defaults. Map your product statuses to in stock, out of stock, preorder and backorder, choose the condition (New, Refurbished, Used) and set a default weight and size for products without them.

- Automatic updates. Turn on Automatic product updates and choose which fields update when you save a product: name, description, images, price, discount, stock, brand, category. The feature is ticked in all four plans.

- Attributes and products. In the Attributes tab map color, size, material and pattern, and in the Products tab click + Add products. Both tabs appear after the Google sign-in.

The app has no on/off button: once it is connected and set up, it runs. One upload runs at a time, in batches of 10 products, and the Status tab shows the progress.

### Merchant Center for a store in Bulgaria or selling across the EU

Bulgaria is not on Google's list of countries where Shopping ads and product listings run, while Romania, Greece, Germany, Austria, Poland and most of the EU are ([Google Merchant Center Help: supported countries and currencies](https://support.google.com/merchants/answer/160637?hl=en)). That changes how you use the feed:

- Selling inside Bulgaria. Search and Performance Max campaigns run here, and Search Console plus GA4 are the tools that bring in buyers. Details are in the guide to Google Ads for an online store .

- Selling to another EU country. The CloudCart feed takes its language, country and currency from the store settings, and one feed targets one country. A store selling to Romania and Greece runs a separate CloudCart store per country, each with its own Merchant Center ID and Google connection.

The product attributes, the common reasons for disapproval and the full country picture are covered in a separate article. See [Google Merchant Center and Google Shopping in Bulgaria](https://cloudcart.com/en/blog/google-shopping-merchant-center-bulgaria).

> Sales channels Change a price once and it reaches Google when you save With automatic updates on, a price or stock change in the admin reaches Merchant Center when you save the product, and the same catalog also feeds Facebook, TikTok, eMAG and Pazaruvaj (a Bulgarian price comparison site). See all sales channels →

## How to connect Google Ads: purchases and remarketing

Purchases reach Google Ads fastest by importing the purchase event from GA4, and remarketing with the products people viewed is switched on through the Google Dynamic Remarketing app and your Google Ads ID AW-…. You do not need a separate purchase snippet in the theme.

### The purchase as a conversion

Link GA4 to Google Ads in GA4 → Admin → Product links → Google Ads links and import purchase as the primary conversion action. The detailed steps and the Tag Manager alternative are in the guide to [Google Ads for an online store](https://cloudcart.com/en/blog/google-ads-online-store).

### Google Dynamic Remarketing

- The tag in Google Ads. In Google Ads open Audiences, choose dynamic remarketing and your business type. Copy the ID and the label from the tag details.

- Install the app. Apps → Google Dynamic Remarketing → Settings → Edit.

- Google Ads tracking ID. Paste the ID. Digits alone are fine, CloudCart adds AW- itself. A wrong format shows "The code is not valid".

- Conversion label. Paste the label. An empty field shows "Please add your Ads variable".

- Choose the type of the parameter. Pick Retail for a store with products or Custom for services. Retail shows products from Merchant Center in the ad, so it needs Google Shopping connected. CloudCart does not check this for you.

- Remarketing event snippet. A switch for whether the event part of the Google Ads tag fires too.

The store sends Google Ads the page type (ecomm_pagetype: home, category, product, cart, purchase), the product ID (ecomm_prodid) and the value (ecomm_totalvalue). Audiences and campaigns are built in Google Ads, not in CloudCart.

> 0% commission An order from an ad loses no percentage to the platform You pay Google for the click, and CloudCart takes no share of the sale. The revenue in the imported purchase , which you use to work out ROAS, is not cut by a platform fee. How 0% commission works →

## How to turn on Consent Mode v2 for Google tags

Google Consent Mode v2 is switched on in CloudCart in Apps → GDPR → Cookies, with the Google Consent Mode group. The group is off by default and asks for confirmation when you turn it on. The Google Analytics app itself has no Consent Mode switch.

With the group active, the store sends Google four denied signals on load (ad_storage, ad_user_data, ad_personalization, analytics_storage) and switches them to granted once the visitor accepts in the banner. GA4, remarketing and GTM get the signal before they fire ([Google for Developers: Consent Mode](https://developers.google.com/tag-platform/security/guides/consent)). For visitors in the EU this is what lets Google Ads keep measuring and remarketing within the consent rules. The group is available with a subscription to the GDPR app; with a one-time purchase of the app, CloudCart asks you to switch to a subscription.

Without the active group no signals are sent and GA4 fires unconditionally; in GTM you decide whether tags wait for consent. The legal side is in the guide to [GDPR and cookies for an online store](https://cloudcart.com/en/blog/gdpr-cookies-legal).

## How to check that each tool receives data

Test every connection from a private window where you are not logged in to the admin, because CloudCart does not send events from admin previews. Accept the cookies in the banner and walk the buyer's path to a test order.

| Tool | Where you check | What you should see |

| GA4 | Realtime and DebugView (with DEBUG mode on) | view_item , add_to_cart , begin_checkout , purchase with the amount |

| Tag Manager | Preview in tagmanager.google.com | The container is loaded, cc_page_data is in the data layer |

| Search Console | Settings → Ownership verification | Verified owner with the "HTML tag" method |

| Merchant Center | Status and Products tabs in CloudCart | The upload has finished, products have a status from Google |

| Google Ads | Goals → Conversions → Summary | "Purchase" with a recent conversion after the test order |

After the test, reconcile one day: orders in CloudCart → Orders and purchase in GA4 should be close. A gap of a few percent comes from declined consent and ad blockers. A large gap means a double tag or a disabled app.

## How Meta, TikTok and email connect the same way

Meta Pixel with Conversions API (Apps → XML Feed → Facebook), TikTok Pixel with Events API (Apps → TikTok Dynamic Ads) and the built-in email, SMS, Viber and web push campaigns follow the same pattern as Google: one app, one ID, no code in the theme. Orders from Facebook, Instagram, TikTok and the newsletter then sit next to Google orders in the same reports. The rule is the same as for GA4: one way per tag. Step-by-step advertising is in the guide to [Meta ads for an online store](https://cloudcart.com/en/blog/meta-ads-online-store).

## How to pull Google and store numbers through Claude or another AI agent

An AI agent such as Claude Code, ChatGPT Codex, Gemini CLI or Cursor reads orders, products and customers from CloudCart with a PAT token, and GA4 and Search Console through Google's APIs with your access. The question "where did this week's money come from" then gets an answer in one conversation instead of three reports.

- A token for the store. Settings → PAT tokens → Create Token, with Read Only rights. You can set an expiry and up to 20 IP addresses. Only the owner can create a token, and its value is shown once.

- Connect the assistant. Paste the sentence from the AI assistant for CloudCart page into Claude Code, ChatGPT Codex, Gemini CLI, Cursor or VS Code, and write to it in English.

- Access to Google. Give the assistant access to the Google Analytics Data API and the Search Console API from your Google account. If you would rather not, export the report as CSV and hand it over.

- Start with a reconciliation. Make the first question a check: GA4 purchases against store orders for the last 30 days. Once they match, ask anything else.

Revenue, orders and average order value come from CloudCart; revenue by channel from CloudCart → [Analytics](https://cloudcart.com/en/analytics) → Sales by traffic source; conversion by device from GA4; clicks and positions from Search Console; ROAS from Google Ads spend set against CloudCart revenue. Give mobile its own row: almost every click from a TikTok or Instagram ad opens the store on a phone. What to check if mobile lags is in the guide to the [mobile version of an online store](https://cloudcart.com/en/blog/mobile-version-online-store).

Prompts merchants start with:

- "Compare purchase in GA4 with store orders for each of the last 30 days and show the days with a gap over 20%."

- "Give me conversion on mobile and desktop for the last 4 weeks, with the average order value for the same weeks."

The gain is that the agent watches numbers nobody checks daily: a broken tag after a theme change, a disabled app or a product disapproved in Merchant Center shows up the next morning, not after a month of advertising blind.

> Store with an AI assistant GA4, Search Console and orders in one conversation With a Read Only token the assistant sees orders and products in CloudCart, and with your Google access it sees the traffic too. Ask your question in plain English and get one table instead of three reports. Connect your AI assistant →

## 6 good practices when connecting Google

- One Google account for the store. Connect the apps with a company account, never an employee's personal email. The Merchant Center connection is store-wide and drops if that account loses access.

- One way per tag. GA4 either through the app or through GTM. Remarketing either through Google Dynamic Remarketing or through GTM.

- Test before you advertise. A test order from a private window after every change of code, theme or cookie banner.

- Search Console from day one. When you migrate, verify the store in Search Console right after switching platforms to watch how Google indexes the new URLs and the 301 redirects ( migration to CloudCart ).

- Key event purchase . In GA4 → Admin → Key events check that purchase is marked before you import it into Google Ads.

- Weekly reconciliation. GA4 purchases against store orders once a week, by hand or with an AI agent.

## Mistakes to avoid

- GTM without Data Layer. The container loads, but purchase tags have no amount and no products.

- Retail remarketing without Merchant Center. The audience fills up, but the ads have no product cards to show.

- Stopping Google Shopping with Logout. Logging out deletes all app settings, while the products stay in Merchant Center. To stop them showing, remove the products in the Products tab.

## Frequently asked questions

**How do I connect Google Merchant Center to my store?**

In CloudCart open Apps → Google Shopping → Settings, sign in with Google, paste your Merchant Center ID and the verification tag, then send products from the Products tab. The feed holds 100 products in Baby Pack up to 10,000 in CC Master.

**Can I run Google Shopping ads in Bulgaria?**

Bulgaria is not on Google Merchant Center's list of countries for Shopping ads, while Romania, Greece, Germany and most of the EU are. In Bulgaria, Search and Performance Max campaigns run. To sell into another EU country, use a separate CloudCart store with that country's language, currency and Merchant Center ID.

**How do I connect GA4 to CloudCart?**

Paste the GA4 Measurement ID (G-XXXXXXXXXX) in Apps → Google Analytics → Settings, enable the app and place a test order. CloudCart sends 12 events by itself, from view_item_list to purchase.

**How do I add Google Tag Manager to my online store?**

In Apps → Google Tag Manager → Settings paste the Container ID in the format GTM-XXXXXXX. Also install the Data Layer app so GTM gets product, cart and order data. No code goes into the theme.

**How do I verify my site in Google Search Console?**

Choose the "HTML tag" method in Search Console, paste the whole meta tag into Apps → Google Search Console → Settings, enable the app and click "Verify" in Google.

**Why does GA4 show no purchases from my store?**

Usually you are testing with the admin open, the app is disabled, or the field holds an old UA- code. With Consent Mode v2 on, purchases by customers who declined cookies are not recorded as full events. Test from a private window and accept the cookies.
