skills/marketing-growth/google-ads-ecommerce/SKILL.md
Build and optimize Google Ads campaigns for ecommerce with Performance Max, Shopping feeds, conversion tracking, and Smart Bidding strategies for ROAS
npx skillsauth add finsilabs/awesome-ecommerce-skills google-ads-ecommerceInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Google Ads captures high-intent buyers at the bottom of the funnel through Shopping ads and Search. A well-structured account combines Performance Max (PMax) for automated coverage and conversion tracking via Google Tag. Reliable conversion tracking is the foundation everything else depends on — before optimizing campaigns, ensure your purchase conversion tag is firing correctly.
Every platform has a native Google integration — start here before touching the Google Ads interface.
For Enhanced Conversions (recovers signal lost to cookie restrictions):
Alternative: install WooCommerce Google Analytics plugin and manually add the purchase conversion event tag.
Add Google Tag (gtag.js) to every page and fire the purchase conversion on the confirmation page:
<!-- In <head> — replace AW-CONVERSION_ID with your account ID -->
<script async src="https://www.googletagmanager.com/gtag/js?id=AW-CONVERSION_ID"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){ dataLayer.push(arguments); }
gtag('js', new Date());
gtag('config', 'AW-CONVERSION_ID');
</script>
On the order confirmation page, fire the purchase conversion:
// Include user_data BEFORE the conversion event for Enhanced Conversions
gtag('set', 'user_data', {
email: order.customerEmail, // Google hashes client-side
phone: order.customerPhone,
address: {
first_name: order.customerFirstName,
last_name: order.customerLastName,
postal_code: order.shippingAddress.zip,
country: order.shippingAddress.countryCode,
},
});
gtag('event', 'conversion', {
send_to: 'AW-CONVERSION_ID/CONVERSION_LABEL',
value: order.subtotal,
currency: order.currencyCode,
transaction_id: order.id, // prevents duplicate counting
new_customer: order.isFirstOrder,
});
For maximum signal reliability, deploy a server-side Google Tag Manager container — this bypasses browser ITP/cookie restrictions. Contact Google or a certified GTM partner to deploy sGTM.
In Google Ads (ads.google.com):
Asset Group 1: Bestsellers
Final URL: /collections/bestsellers
Headlines (15): focus on social proof — "Top Rated", "5-Star Reviews", "#1 Bestseller"
Images: product lifestyle shots + white-background product images (both required)
Videos: 15s and 30s product demos (upload at least one)
Audience signals: Past purchasers (upload customer list), Product viewers (7-day list)
Asset Group 2: New Arrivals
Final URL: /collections/new
Headlines: "Just Dropped", "New for [Season]", "Shop the Latest"
Audience signals: Instagram engagers, fashion/lifestyle interest segments
Asset Group 3: Sale / Clearance
Final URL: /collections/sale
Headlines: "Up to 50% Off", "Final Sale", "Limited Time"
Smart Bidding requires conversion data to optimize. Do not set ROAS targets until you have 30+ conversions in the last 30 days.
Ramping schedule:
Conversion Value Rules — set these to bias the algorithm toward new customers:
| Metric | Action if off target | |--------|---------------------| | Impression Share lost to budget | Increase daily budget | | Impression Share lost to rank | Improve product feed quality (titles, images); increase ROAS ceiling | | PMax spending on branded queries | Add brand terms as campaign-level negative keywords | | Low conversion rate on Shopping | Check that landing page price matches feed price exactly; fix product page CRO |
In Google Ads: Reports → Predefined Reports → Shopping → Shopping performance by product — identifies which specific products have the highest ROAS and which are wasting budget.
| Problem | Solution |
|---------|----------|
| Double-counting conversions | Add transaction_id to the conversion tag and enable "Deduplicate conversions" in Google Ads conversion settings |
| PMax spending all budget on branded queries | Add brand terms as campaign-level negatives or run a separate branded Search campaign at higher priority |
| GMC feed disapproved | Check Merchant Center Diagnostics; most common: missing GTIN, price mismatch with website, broken image links |
| Smart Bidding enters "limited" status | Ensure 30+ conversions in the last 30 days; temporarily switch to Maximize Conversion Value to accumulate data |
| Enhanced Conversions match rate under 30% | Send email in lowercase trimmed format; include phone and address for higher match probability |
tools
Let shoppers save products to a wishlist, share it with friends, and get notified when saved items come back in stock or drop in price
development
Build a themeable storefront with design tokens and CSS custom properties that supports white-labeling, multi-brand variants, and dark mode
development
Speed up product discovery with instant search suggestions, fuzzy typo matching, and category-aware results powered by Algolia or Elasticsearch
development
Build a mobile-first storefront with thumb-friendly navigation, sticky add-to-cart buttons, and touch-optimized components for high mobile conversion