1 Executive summary
They already have the hardest thing to buy: a real, engaged organic audience. They are missing all of the cheap, fixable things: conversion tracking, an owned email or SMS list, working social links, and a real funnel. Fix the plumbing first and the existing attention starts converting.
Headline finding (measured 2026-07-14): the live site has zero conversion tracking. A fresh headless fetch of the homepage (200, 1,465,313 bytes) and a fixed-string scan found no Meta Pixel or Conversions API, no Google tag or GA4, no Google Tag Manager, and no TikTok pixel. Wix tag manager returns exactly one app, a product-bundles helper (poco-bundles). Consequence: no audience is being built, every visitor is currently un-retargetable through a pixel, no ad platform can optimize to purchases, and there is no visibility into where buyers drop off. Pixels only collect from the day they are turned on, so this is day-one work and it unlocks everything else in this plan.
Audience credibility gap (measured contradiction, must resolve before any spend): the client reports roughly 1,000,000 Instagram followers and roughly 100,000 likes per post. That figure is client-reported and unverified, and it is directly contradicted by the only Instagram account reachable from the brand. The handle @precisionputting resolves to an account named "Barnes Sports Group" with the brand account @thegrailbyprecisionputting shows 5,248 followers (verified 2026-07-14), not a 1,000,000-follower profile. On top of that, the live site's own Instagram link points at a generic login redirect (instagram.com/accounts), not a real profile. Before any follower or engagement number is used in this plan or in any ad account, the client must supply the exact profile URL of the roughly 1,000,000-follower account so it can be confirmed live. Until then, treat the roughly 1,000,000 and roughly 100,000 figures as client-reported and unverified everywhere they appear.
0
Tracking pixels installed on the live site (measured). No Meta, GA4, GTM, or TikTok.
1.46MB
Homepage HTML document alone (measured), before images and scripts. Mobile Lighthouse 67 of 100.
16
Followers on the only reachable @precisionputting IG account (measured), vs the roughly 1,000,000 client-reported.
The three moves, in order
- Instrument (this week, roughly $0 on ads). Install GA4 and the Google tag, the Meta Pixel plus Conversions API, and the TikTok pixel on the Wix store. Connect the catalog to Meta Commerce Manager and Google Merchant Center. Add email and SMS capture. Verify every event actually fires; an install is not proof.
- Retarget and defend (weeks 2 to 4, small and high ROAS). Turn on Meta warm retargeting (Instagram and Facebook engagers, which need no pixel history) and cheap defensive Google Brand Search. This is the fastest money and it produces the purchase events the pixels need.
- Scale to margin (month 2 and beyond). Once the pixels have real purchase volume, open Meta Advantage+ Shopping prospecting and migrate Google Shopping to feed-first Performance Max, heroing the higher-margin mat and bundles rather than the low entry price grip.
Product ladder (client-reported, verify live prices before any feed submission): The Grail trainer $299, The Grail Mini (redesign-authored near $249, live price unconfirmed), The Grail putting mat $125, Standing Mat $35, Avanti grips from $19, Moose glove $28, plus bundles and lessons.
2 Website audit
Measured with the website-auditor tool (crawl of 20 pages) plus live PageSpeed Insights and the DataForSEO SERP API, all re-confirmed against the live served HTML on 2026-07-14. Every figure is labeled measured, client-reported, or unverified. Full report: audit/precision-putting-website-audit.html.
P0 (this week, blocks everything else)
- Zero tracking installed (measured, headline). No Meta Pixel, GA4 or Google tag, GTM, TikTok, Pinterest, Snap, Klaviyo, Hotjar, or Clarity in the served HTML. No audience is being built and no ad platform can optimize. Install GA4 and Google tag, Meta Pixel with Conversions API, and the TikTok pixel now, and connect the Wix catalog to Meta Commerce Manager and Google Merchant Center.
- No owned-audience capture. No email or SMS capture anywhere on the site. Add a pop-up plus footer and post-purchase capture.
- Broken or wrong social links (measured). The site Instagram link is a generic login redirect (instagram.com/accounts/onetap), not the brand profile, and Facebook is a numeric personal profile (profile.php?id=100092387144352), not a business Page. A personal profile cannot cleanly run Page ads or Instagram Shopping.
P1 (weeks 2 to 3)
- Slow, heavy pages (measured). Mobile Lighthouse performance 67 of 100; LCP 3.4s, First Contentful Paint 3.0s, Total Blocking Time 520ms, Speed Index 7.1s. Homepage HTML document is 1.43 MB before images and scripts; product pages run 1.4 MB to 1.8 MB each.
- Invisible for non-brand terms (measured). Ranks number 1 for brand and product names but not in Google top 30 for putting trainer, putting mat, putter grip, or putting aid. EyeLine Golf owns those.
- No review or rating schema (measured). Product pages have Product and Offer schema but no aggregateRating, so no star ratings in search.
- Catalog hygiene (measured). The Mini is canonicalized to a draft slug (/product-page/test-the-grail-mini); near-duplicate Mini bundle pages exist; no single named Total Bundle product.
P2 (ongoing)
- Thin on-page text (measured). All 20 crawled pages fall under the 300-word depth threshold in the served HTML; no page uses FAQPage or BreadcrumbList schema. Add copy, FAQ schema, and breadcrumbs for Google and AI answer engines.
- Image accessibility and image SEO (measured). Every crawled page has images missing alt text (homepage 9 of 13; The Grail page 15 of 35).
- Metadata (measured). Homepage and both category pages have no meta description; category pages have zero H1; homepage has two H1; titles are brand-heavy and keyword-light.
- No paid competition (measured). Zero advertisers on any tested term, including the brand, so entry cost for brand-defense and Shopping is low.
Rankings snapshot (Google US, top 30, 2026-07-14)
| Keyword | Type | PP position | Number 1 |
| precision putting | brand | 1 | precisionputting.com |
| the grail putter grip | product | 1 | precisionputting.com |
| avanti putter grips | product | 2 | avantigolf.se |
| putting trainer | non-brand | Not in top 30 | eyelinegolf.com |
| putting mat | non-brand | Not in top 30 | birdieball.com |
| oversized putter grip | non-brand | Not in top 30 | jumbomax.com |
Infrastructure (measured, healthy): HTTPS on every page, a correctly structured Wix sitemap index (products, categories, dynamic products, and pages child sitemaps), robots.txt present, and canonicals on all pages. The one canonical issue is that the Mini canonical points at the test slug.
Not verifiable: the roughly 1,000,000 Instagram followers and roughly 100,000 likes per post are client-reported. Instagram serves a login wall to headless requests, so they could not be confirmed. The TikTok handle precisionputting and YouTube channel UCOV3UkzTaSwm-hu31ey3MzQ were confirmed as linked from the site.
3 Social media analysis
All figures below were pulled headless on 2026-07-14 from public endpoints (site HTML, platform og meta tags, YouTube and TikTok public JSON). Instagram and TikTok gate almost everything behind login, so per-post numbers were not obtainable and are listed in the gaps. The single most important finding: the client-reported audience of roughly 1,000,000 Instagram followers and roughly 100,000 likes per post could not be verified on any handle linked to this brand, and it is directly contradicted by every account we could measure. The handle @precisionputting on Instagram is a near-empty account named "Barnes Sports Group" (16 followers, 2 posts). The brand needs to hand us the exact URL of the account it means before any follower or engagement claim can be treated as real.
Compounding this: the live Wix site does not correctly link its own Instagram. On every rendered page the Instagram icon points to instagram.com/accounts (a generic login redirect), not a profile. So even a real 1,000,000-follower audience currently has no working path from the website to the feed, and no path from the feed back to a tracked store.
Channel inventory (measured vs client-reported)
| Channel |
Account found |
Measured 2026-07-14 (public) |
Client-reported |
Read |
| Instagram |
@precisionputting, displays as "Barnes Sports Group" |
16 followers, 17 following, 2 posts (og meta via crawler) |
roughly 1,000,000 followers, roughly 100,000 likes per post (unverified) |
Handle does not match the reported audience. Real account unknown. Site link is broken. |
| Facebook |
Page "Precision Putting" (id 100092387144352), category Golf Instructor |
4,410 likes, 535 talking about this |
not specified |
Real Page confirmed. Site links the profile.php id, which redirects here. Small but active. |
| TikTok |
@precisionputting (bio links precisionputting.com) |
5 followers, 5 videos, 64 total likes |
not specified |
Effectively dormant. No Spark Ads possible without a pixel and real posting. |
| YouTube |
@precisionputting (UCOV3UkzTaSwm-hu31ey3MzQ) |
42 subscribers, 10 videos, uploads about 2 years old, per-video views 64 to 2,200 |
not specified |
Abandoned. Content is long-form instructional, not short-form hooks. |
Measured means read directly from a public source on the date shown. Client-reported means stated by the client and not yet verified. "Not specified" means the client gave no number for that channel.
Format and engagement analysis
Only YouTube exposes per-item numbers publicly, so it is the clearest window into what content exists. The catalog there is product-education, not entertainment: setup tutorials ("First Time Setup", "Understanding the Grail Setup", "Adjusting your Grail"), a two-episode explainer series ("The Science Behind the Grail", "Special Guest Jack Kelly"), and a demo piece ("Putt Like a Machine"). The best performer was a mechanism-of-action explainer at about 2,200 views while most setup clips sat between 60 and 550 views. The signal, even at tiny scale, is that "why the trainer works" content out-pulled "how to assemble it" content.
The brand posture is inverted for direct response. Long instructional video lives on YouTube where almost nobody follows the brand, while the short-form platforms that actually sell golf gear (Instagram Reels and TikTok) are either dormant (TikTok, 5 videos) or point at the wrong or unlinked handle (Instagram). If the roughly 1,000,000-follower audience the client describes is real, it is stranded: there is no working site link to it, no shoppable tagging on the posts, and, per the tracking audit, no Meta Pixel, no Conversions API, no TikTok pixel and no GA4 on the store. That is the true engagement-to-sales gap. Reach cannot convert because there is no shoppable funnel, no link-in-bio store, and nothing installed to retarget a single viewer.
Recommendations
- Get the real Instagram handle and fix the site link first. Ask the client for the exact URL of the roughly 1,000,000-follower account and confirm it live. Then replace the broken instagram.com/accounts link (present on every page of the current site and absent from the redesign footer) with the real profile on both the live site and the redesign comp. Nothing else in this plan works until the audience is verified and reachable.
- Double down on short-form demo and mechanism-of-action Reels and TikToks. The one content signal we have says "why it works" beats "how to set it up." Prioritize 15 to 30 second vertical clips: the satisfying repeat stroke ("putt like a machine"), the audible or visual feedback of the Grail, and short before-and-after stroke corrections. Retire the long tutorial format as the lead asset and keep it only as a support library.
- Make the feed shoppable end to end. Connect the Wix Stores catalog to Meta Commerce Manager to enable Instagram and Facebook product tagging, and stand up a link-in-bio landing page on the domain that routes to product pages. The redesign already deep-links its 7 shopping buttons to the live Wix product and category pages (The Grail at 299, Grail Mini, the 125 mat, the 35 standing mat, Avanti grips from 19, Moose glove at 28, bundles and lessons), so that page is the ready-made bio destination. Add TikTok Shop once the catalog feed exists.
- Install tracking before spending on paid, then boost proven organic posts. Per the tracking audit, add the Meta Pixel plus Conversions API, a TikTok pixel, and GA4 to the Wix store. Only then can organic reach be retargeted and paid be optimized. Once IG and TikTok Insights can be exported, rank organic posts by saves and shares and watch-through rate (not raw likes) and turn the top performers into paid ads using the original post: Spark Ads on TikTok and Partnership or whitelisted ads on Meta, so each ad keeps its organic social proof. Based on the only signal we can see today, the mechanism-of-action and "putt like a machine" demo angles are the first candidates to whitelist.
4 Meta ads test plan
A structured Facebook and Instagram paid test, built the way our facebook-ads-optimizer tool models campaigns, audiences, and conversion events. Retargeting first for high ROAS, then Advantage+ Shopping to scale prospecting to margin. Read-only proposal: our stored Meta token is dead and points at a different account, so nothing below was run against the client account.
Phase 0: instrument before spending (week 1, $0 ad spend)
Pixels only collect from the day they turn on, so this is day-one work. Business type in our tool: ecommerce, which maps to the standard event set below.
| Event | Priority | Fires when | Wix hook |
| PageView | Required | Every page load | Base pixel, all pages |
| ViewContent | Required | Product page view | /product-page/ URLs, pass content_ids, value, currency |
| AddToCart | Next | Add to cart click | Wix Stores add-to-cart event |
| InitiateCheckout | Next | Checkout started | Wix hosted checkout entry |
| Purchase | Required | Order complete (thank-you) | Wix Stores order confirmation, pass value, currency, order id for dedupe |
| Search | Later | Site search | Store search box |
- Meta Pixel plus Conversions API (both). Use the Wix native Meta integration so browser and server events are deduplicated by event id. CAPI matters here because iOS and ad-blockers drop a large share of browser-only events.
- Product catalog. Connect Wix Stores to Meta Commerce Manager so Advantage+ Catalog (dynamic retargeting) and Instagram Shopping have a live feed. Fix the Mini slug (currently the draft-style "test-the-grail-mini") before the catalog syncs so the feed URL is clean.
- Custom conversion "PP Purchase" with a value, keyed on the order-confirmation event, so campaigns optimize to real revenue, not page views.
- Verify, do not assume. Use Meta Events Manager Test Events to confirm each event fires with correct value and currency. An install is not proof; a firing event with the right payload is.
Campaign structure
Sequence by temperature: warm retargeting first (cheapest conversions, no pixel history needed), then cold prospecting once the pixel and CAPI have logged enough purchases to optimize. All campaigns use the Sales objective. Budgets shown are daily.
| Phase | Campaign | Objective / setup | Ad sets and optimization | Start budget |
| 1Wks 2-4 |
PP-RET-Warm Retargeting |
Sales, Advantage+ Catalog (dynamic) plus static. Manual audiences. Exclude purchasers 30d. |
AS-1 IG plus FB engagers 365d; AS-2 Video viewers; AS-3 Site visitors 180d (add once pixel has 2-3 weeks). Optimize AddToCart early, switch to Purchase as data matures. |
$50/day |
| 1Wk 3+ |
PP-PROSPECT-Spark Cold test |
Sales, single small test. Broad plus interest (golf, putting). |
One ad set, Purchase optimization. Runs the top organic posts as Spark ads to cold traffic to read cold creative-market fit cheaply. |
$25/day |
| 2Mo 2+ |
PP-ASC Advantage+ Shopping |
Sales, Advantage+ Shopping Campaign (ASC). Advantage+ audience with lookalike suggestions as seed. Existing-customer budget cap set. |
ASC handles delivery. Feed winning Spark and demo creative. Scale in +20% steps every 3-4 days while ROAS holds. |
$75-100/day, scale to margin |
| 2Mo 2+ |
PP-LAL Lookalike prospecting |
Sales, manual. Runs alongside ASC only if ASC needs steering. |
1% lookalikes of IG engagers and of purchasers (once roughly 100+ purchases). Purchase optimization. |
$40-60/day (optional) |
Why this order: the organic audience is the moat. Warm retargeting (engagers plus video viewers) is available on day one with no pixel history, converts at the highest ROAS, and produces the purchase events the pixel needs to later optimize cold prospecting. Scaling cold spend before retargeting proves out and before the pixel matures is how test budgets get wasted.
Audiences to build
Two tiers. The no-pixel audiences can be built the same day the ad account is ready, before any tracking data exists (this is the fast money). The pixel-based audiences populate only after Phase 0 is live and traffic accrues. Note: these engagement audiences build from whatever real profiles the client confirms, which is why verifying the true Instagram account comes first.
| Audience (build now, no pixel) | Source | Retention | Use |
| PP IG Engagers 365d | Instagram professional account engagement | 365 days | Primary warm retargeting, largest warm pool. |
| PP FB Page Engagers 365d | Facebook Page engagement | 365 days | Warm retargeting, second seat. |
| PP Video Viewers 95pct 365d | Video and Reels ThruPlay and 95% viewers | 365 days | High-intent warm, strong lookalike seed later. |
| PP Email List (if any exists) | Customer list upload (hashed) | n/a | Retargeting plus a clean purchaser lookalike seed. The audit found no capture tool, so this may be empty. |
| Audience (once pixel matures, 2-3 weeks) | Type | Retention | Use |
| PP AllVisitors 180d | Website custom audience | 180 days | Broad site retargeting |
| PP AddToCart 30d | Website (AddToCart) | 30 days | Cart abandoners, high intent. Exclude Purchasers 7d. |
| PP Checkout 14d | Website (InitiateCheckout) | 14 days | Checkout abandoners, highest intent. Dynamic catalog ad. |
| PP Purchasers 180d | Website (Purchase) | 180 days | Exclusion from prospecting, cross-sell, and lookalike seed. |
| PP LAL 1pct US (purchasers) | Lookalike, ratio 0.01 | n/a | Best cold seed once roughly 100+ purchases exist; expand to 2-3% to scale. |
Creative tests (lead with Spark ads)
Reuse proven organic winners before inventing new creative. Because the true engagement numbers are unverified, rank candidates by the measurable signals (saves, shares, watch-through), not by the reported like counts.
| # | Test | What it is | Reads |
| 1 | Spark ads from top organic posts (lead test) | Run the highest-engagement existing IG and FB posts as Spark or partnership ads, warm audiences first, then cold. Near-zero production cost. | Whether organic winners transfer to paid; sets the baseline everything else must beat. |
| 2 | Product proof / demo video | The Grail in use, before-and-after stroke, short UGC-style demo. Static frame variant for feed. | Does explicit product demonstration beat social-proof posts for cold buyers. |
| 3 | Authority / instruction angle | Coach or tour-credibility creative from the lessons and how-to library. Speaks to "fix your putting". | Does a teaching hook out-convert a product hook for cold prospecting. |
| 4 | Offer / bundle to lift AOV | Free-shipping threshold, trainer-plus-mat bundle, grip multipack. Uses the existing bundles app. Static vs video. | Whether a bundle offer raises average order value enough to widen the ROAS-positive prospecting ceiling. |
| 5 | Dynamic catalog retargeting | Advantage+ Catalog dynamic product ads to cart and checkout abandoners once catalog plus pixel are live. | Efficiency of automated dynamic retargeting vs static warm ads. |
ROAS and CPA targets (method, not confirmed thresholds)
- Retargeting (warm): target platform-reported ROAS 5x or better.
- Prospecting (cold ASC): target platform-reported ROAS 2.5x to 3x, hard floor at breakeven.
- Breakeven ROAS = 1 / contribution margin. At roughly 50% blended margin breakeven is about 2.0x; at roughly 40% it is about 2.5x. Client-reported input needed real product margins and AOV before these lock.
- Max allowable CAC = AOV x contribution margin. The $299 Grail carries the math; the $19 grip alone will not sustain cold prospecting, which is why the bundle and AOV test matters.
- Reconcile to truth: Meta over-attributes. Triangulate platform ROAS against real Wix Stores revenue and GA4, plus a post-purchase "how did you hear about us" survey and periodic holdout lift tests.
Proposed buildout, mapped to facebook-ads-optimizer
Mirrors our CLI so the plan is executable once the client account and a live token are in hand. Read-only here.
# Phase 0: recommend + install the ecommerce standard-event set
meta conversion-setup recommend ecommerce
meta conversions setup-standard <PIXEL_ID> --events PageView,ViewContent,AddToCart,InitiateCheckout,Purchase,Search
meta conversions create act_<ID> "PP Purchase" --rule /thank-you --value <AOV> --pixel-id <PIXEL_ID>
# Verify events actually fire (an install is not proof)
meta pixels health <PIXEL_ID>
meta conversion-setup audit <PIXEL_ID> act_<ID> --business-type ecommerce
# Pixel-based audiences (once ~2-3 weeks of traffic exist)
meta audiences create-website act_<ID> <PIXEL_ID> "PP AllVisitors 180d" --retention 180 --confirm
meta audiences create-website act_<ID> <PIXEL_ID> "PP AddToCart 30d" --retention 30 --confirm
meta audiences create-website act_<ID> <PIXEL_ID> "PP Purchasers 180d" --retention 180 --confirm
# Lookalike seeds (purchasers once ~100+ orders)
meta audiences create-lookalike act_<ID> <PURCHASERS_AUD_ID> --country US --ratio 0.01 --confirm
# The 365-day IG + FB engager and video-viewer audiences need no pixel;
# build them in Ads Manager the same day (create-website is pixel-only).
# Read + verify performance (never assume from HTTP 200)
meta campaigns list act_<ID>
meta conversions stats act_<ID> --since <START> --until <END>
5 Google ads and shopping plan
Precision Putting has the hardest asset to buy (a large, engaged audience) but none of the plumbing that lets Google Ads work. This plan installs the plumbing first, then builds Search, Shopping, Performance Max, and YouTube off a clean Merchant Center feed. Read-only proposal. Nothing has been changed on the live Wix store or any ad account.
Blocking finding (verified 2026-07-13 and re-verified in this pass): the live homepage HTML contains no Google tag, no GA4 (no G- id), no Google Tag Manager container, and no conversion pixel of any kind (also no Meta or TikTok pixel). Google Shopping, Performance Max, and any value-based bidding cannot run without a purchase conversion. Tags only collect from the day they are switched on, so this is day-one work, not a later step.
1. Conversion tracking prerequisites (fix before any spend)
- Install the Google tag plus GA4 on the Wix site (Wix Settings, Marketing Integrations, Google Analytics field, or a GTM container). Wix Stores already emits ecommerce events to the data layer, so verify view_item, add_to_cart, begin_checkout, and purchase actually fire (GA4 DebugView), not just page_view.
- Create one Google Ads Purchase conversion action (value plus currency USD from the purchase event), imported from GA4 or set through the tag. Set it as the campaign-level primary conversion goal on every campaign, not the account default. The account default pulls GA4 micro conversions (page_view, scroll) and would burn Shopping and PMax budget on non-buyers.
- Turn on Enhanced Conversions (hashed email and phone from the Wix checkout) to recover match rate that Wix cookie limits otherwise lose.
- Do not enable Maximize Conversions, Target ROAS, or Performance Max until the Purchase action has real volume. Start Brand and Standard Shopping on manual bidding, then migrate once roughly 15 to 30 conversions per month exist.
2. Merchant Center setup
- Create or claim a Merchant Center account and verify plus claim www.precisionputting.com (Wix connection or DNS or HTML tag). Complete business information and publish real Shipping, Returns, and Contact policy pages. Wix stores that launch without these are the single most common cause of a Merchant Center "misrepresentation" account suspension, so this comes before the feed.
- Primary feed: connect Wix to Google through Wix Marketing Integrations, Google channel, which pushes a Content API primary feed of the Wix Stores catalog to Merchant Center. Match country US, language en, destinations Shopping ads plus Free listings. (If commerce is later migrated to Shopify, use the Google and YouTube channel feed instead, which resolves most of the pitfalls below at once.)
- Supplemental feed (our standard contract, same as Factory Xenon and Grow plus Gather): create it inside the Merchant Center UI as a Supplemental feed, never through the Content API insert() call (insert() registers a second primary source and double-ingests). Align country, language, and destinations to the primary, then point a scheduled fetch at a CSV export URL. Automation only calls datafeeds.update() against that existing supplemental feed id.
- Use the supplemental feed to patch what Wix omits: identifier_exists set to no plus brand plus mpn for The Grail and Grail Mini (proprietary goods with no GTIN, which otherwise trip a "missing GTIN" flag); google_product_category "Sporting Goods > Outdoor Recreation > Golf"; product_type by line; shipping_weight; and custom_label buckets that separate higher-margin items (the mat and bundles) from the entry grip so campaigns can bid on margin. Values must be spec form (in_stock, not "in stock"; out_of_stock; Display_ads).
- Colorways: the 10 Grail colors should be one item group (shared item_group_id) with a color attribute, or Merchant Center reads them as duplicate items.
- Link Merchant Center to the Google Ads account (same MCC) and enable automatic price and availability updates so the feed never drifts from the live store. Confirm zero critical disapprovals before launching Shopping or PMax.
Wix feed data-hygiene blockers (fix on the store first):
- The Mini product page live slug is "test-the-grail-mini" (draft style). That URL becomes the feed landing page and reads as an unfinished page and a likely title and price mismatch. Rename it to a clean slug before the feed goes live.
- There is no single "Total Bundle" product, so the highest-cart-value offer cannot appear as one Shopping item. Either create a named bundle product (mark is_bundle yes) or exclude bundles from the feed and drive them through Search and PMax landing pages only.
- Reconcile prices. The redesign comp shows the Mini near $249 and a Total Bundle at $789 (both redesign-authored and unverified), while the live catalog is unconfirmed on both. Feed price must equal the landing-page price to the cent or the item is disapproved for price mismatch.
- If a free-shipping threshold is offered, it must be reflected in the feed shipping attribute or items underperform or get flagged.
3. Campaign structure
Geo is US-wide by design (nationwide-shipping ecommerce, Presence: people in United States), language English, and every campaign carries the campaign-level Purchase goal. This is a deliberate national target, not a default. Non-brand keywords start on phrase and exact match only (no broad match) until conversion data justifies expansion.
| Campaign | Type | Bid strategy | Focus / heroes | Proposed budget | Phase |
| Brand Search |
Search |
Manual CPC, then Target Impression Share 80 percent |
"precision putting", "the grail putter", "the grail putting trainer", "avanti grail grip". Defensive and cheap, keeps marketplaces and competitors off the brand. |
$10 to $15 per day |
1 |
| Shopping - Standard |
Standard Shopping |
Manual CPC, priority MEDIUM |
Runs off the Merchant Center feed with no conversion history required. Bid up the mat and bundles, bid down the entry grip. Bridge until PMax has data. |
$20 to $30 per day |
1 |
| Performance Max (feed-first) |
Performance Max |
Maximize Conversion Value, add Target ROAS once stable |
Listing groups split so the higher-margin mat and bundles get their own asset group and budget priority over the $19 grip and $35 mat impulse items. Replaces Standard Shopping once conversions mature. |
$30 to $50 per day |
2 |
| Non-brand Search |
Search |
Maximize Conversions (phrase and exact, no broad) |
Ad groups: "putting trainer" and "putting aid" and "best putting trainer"; "putting mat" and "practice putting green"; "putter grip" and "oversize putter grip". Tight negatives (jobs, repair, used, mini golf). |
$15 to $25 per day |
2 |
| YouTube retargeting plus prospecting |
Video (later Demand Gen) |
Target CPM, then Maximize Conversions |
Retarget site visitors and channel viewers of the existing library (channel UCOV3UkzTaSwm-hu31ey3MzQ), plus putting-tips prospecting to golf audiences. Uses content they already own, not new creative. |
$10 to $15 per day |
3 |
4. Phased budget and KPIs
Phase 0, weeks 1 to 2
Instrument. Roughly $0 on ads.
Install GA4 and the Google tag, stand up the Purchase conversion with Enhanced Conversions, build and validate the Merchant Center primary plus supplemental feed, and clear the Wix data-hygiene blockers. Ship nothing paid until the Purchase event verifies and the feed shows zero critical disapprovals.
Phase 1, weeks 3 to 6
Brand Search plus Standard Shopping. About $30 to $45 per day ($900 to $1,350 per month) on Google.
Cheapest, highest-intent money first. Brand is defensive and near-free; Standard Shopping starts pulling the catalog while PMax has no data yet. Prove ROAS at small scale before spending more.
Phase 2, month 2 to 3
Add Non-brand Search, migrate Shopping to Performance Max. About $65 to $105 per day ($1,950 to $3,150 per month) on Google.
Once 15 to 30 monthly purchases exist, convert Standard Shopping to feed-first PMax on Maximize Conversion Value and open non-brand Search on the high-intent terms. Hero the mat and bundles to lift average order value against the low $19 entry price.
Phase 3, month 3 and beyond
Scale PMax plus YouTube retargeting. About $110 to $150 per day ($3,300 to $4,500 per month) on Google, ROAS permitting.
Add Target ROAS to PMax, layer YouTube retargeting and prospecting off the existing video library, and scale only while blended ROAS holds. This is the Google slice; Meta remains the larger channel because the organic audience lives there.
KPIs and guardrails
- Merchant Center: zero critical disapprovals, under 5 percent total item disapproval, all active items live.
- Tracking: Purchase conversion firing with value on 100 percent of orders (verified in GA4 DebugView and Google Ads), before any budget scale.
- Brand Search: 80 percent or higher impression share, ROAS 8x or better (cheap and defensive).
- Shopping and PMax: set the breakeven ROAS at 1 divided by gross margin once margin is confirmed, then target a safety multiple above it. Interim working targets: Standard Shopping 3x, PMax hero SKUs 4x.
- Non-brand Search: CTR above 3 percent, cost per conversion at or under (gross margin times average order value).
- Average order value: track bundle and mat attach rate; the low grip entry price is the main paid-math risk.
5. What was verified vs still open
- Verified live headless on 2026-07-14: homepage returns 200 at about 1.46 MB (matches the roughly 1.5 MB heavy-payload finding); product-page/the-grail, product-page/the-grail-standing-mat, category/all-products, and category/the-grail-bundles all return 200; homepage HTML carries no Google tag, GA4, GTM, Meta, or TikTok pixel.
- Social links on the live homepage: TikTok tiktok.com/@precisionputting and YouTube channel UCOV3UkzTaSwm-hu31ey3MzQ resolve as given. The Facebook link is a personal profile URL (profile.php?id=100092387144352), not a Business Page, so a real Page must be located or created before Meta commerce. The site's own Instagram link points to instagram.com/accounts (a broken or login redirect), so the handle is inferred as @precisionputting from the matching TikTok handle but was not confirmed from the live site.
- Not verified, treat as client-reported: the roughly 1,000,000 Instagram followers and roughly 100,000 likes per post. Instagram served a login-walled page with no public follower metadata on a headless fetch, so these figures could not be independently confirmed and must not be presented as measured.
- Not verified: current revenue, average order value, and product margins. These set the breakeven ROAS and the real budget ceiling and must be confirmed with the client before scaling past Phase 1.
7 Consolidated budget (Meta plus Google)
One phased view that merges the Meta and Google slices. All dollar figures are PROPOSED starting points, not measured performance, and must be tuned once the client confirms gross margin, average order value, and current revenue (all currently unknown). Meta remains the larger channel because the organic audience lives there; Google is the cheaper, defensive and intent-capture slice.
Phased spend
| Phase | Window | Meta / day | Google / day | Blended / day | Blended / month |
| Phase 0 Instrument | Week 1 to 2 | $0 | $0 | $0 on ads | Build only |
| Phase 1 Retarget plus brand | Weeks 2 to 6 | $50 to $75 | $30 to $45 | $80 to $120 | $2,400 to $3,600 |
| Phase 2 Scale to margin | Month 2 to 3 | $150 to $250 | $65 to $105 | $215 to $355 | $6,450 to $10,650 |
| Phase 3 Scale (ROAS permitting) | Month 3+ | $250+ to margin | $110 to $150 | $360+ | $10,800+ |
What each phase buys
Phase 0 • Instrument
Roughly $0 on ads. The unlock for everything.
Install GA4 and the Google tag, the Meta Pixel plus Conversions API, and the TikTok pixel. Stand up the Purchase conversion with Enhanced Conversions. Connect the catalog to Meta Commerce Manager and Google Merchant Center, and build the Merchant Center primary plus supplemental feed. Add email and SMS capture. Build the no-pixel Meta warm audiences. Clear the Wix data-hygiene blockers (Mini slug, bundle product, price parity). Ship nothing paid until events verify firing and the feed shows zero critical disapprovals.
Phase 1 • Retarget plus brand
$80 to $120 per day blended ($2,400 to $3,600 per month).
Meta $50 to $75/day: warm retargeting on IG and FB engagers and video viewers, plus one small $25 Spark cold test in week 3. Google $30 to $45/day: Brand Search (defensive, near-free, 80% impression share) plus Standard Shopping on manual CPC off the feed. Cheapest, highest-intent money first. This de-risks the first dollars and generates the purchase data both pixels need.
Phase 2 • Scale to margin
$215 to $355 per day blended ($6,450 to $10,650 per month).
Meta $150 to $250/day: open Advantage+ Shopping prospecting (roughly 60% prospecting, 40% retargeting), scale in +20% steps every 3-4 days while ROAS holds. Google $65 to $105/day: migrate Standard Shopping to feed-first Performance Max on Maximize Conversion Value and open non-brand Search (phrase and exact only, no broad). Hero the mat and bundles to lift AOV against the $19 entry price. Gate: only after retargeting clears the ROAS bar and roughly 15 to 30 monthly purchases exist.
Phase 3 • Scale, ROAS permitting
$360+ per day blended ($10,800+ per month).
Add Target ROAS to Meta ASC and Google PMax, layer YouTube retargeting and prospecting off the existing video library (channel UCOV3UkzTaSwm-hu31ey3MzQ), and scale only while blended ROAS holds. Meta stays the larger channel.
KPIs and guardrails (shared)
- Tracking: Purchase conversion firing with value on 100% of orders, verified in GA4 DebugView, Meta Test Events, and Google Ads, before any budget scale.
- Merchant Center: zero critical disapprovals, under 5% total item disapproval, all active items live.
- Meta retargeting: platform ROAS 5x or better; keep frequency under 3 to 4 per week.
- Meta prospecting and Google Shopping/PMax: breakeven ROAS = 1 / gross margin (set once margin is confirmed), then a safety multiple above it. Interim working targets: Meta ASC 2.5x to 3x, Google Standard Shopping 3x, PMax hero SKUs 4x, Brand Search 8x or better.
- Reconcile: triangulate platform ROAS against actual Wix Stores revenue and GA4. Platform numbers alone are not truth.
- AOV: track bundle and mat attach rate; the low grip entry price is the main paid-math risk in both channels.
8 To finalize, confirm these numbers
- The real Instagram account. The exact profile URL of the roughly 1,000,000-follower account, plus read access to the Instagram professional account, Facebook Page, and Meta ad account, so followers and per-post engagement can be verified. The only reachable @precisionputting handle shows 16 followers, not 1,000,000, so nothing here treats the reported audience as fact until this is confirmed.
- Current monthly revenue and average order value. These set the real budget ceiling and the breakeven math.
- Monthly ad budget you want to commit for the test (drives which phase pacing above applies).
- Contribution margin per product. So breakeven ROAS and max CAC are set from fact, not placeholders.
- Does an email or customer list exist to upload, or is it truly empty (the audit found no capture tool).
- Platform choice: ship the wired link-out redesign on Wix now, or greenlight a later Shopify migration once paid spend scales.
- Live prices and catalog fixes. Confirm the live Mini price, rename the draft-style "test-the-grail-mini" slug (add a 301), and decide whether to create a real named bundle product or relabel the redesign bundle card. The redesign-authored $789 bundle and near $249 Mini are unverified and must not be submitted to any feed until price parity with the live landing page is confirmed to the cent.
3 Social media analysis
All figures below were pulled headless on 2026-07-14 from public endpoints (site HTML, platform og meta tags, YouTube and TikTok public JSON). Instagram and TikTok gate almost everything behind login, so per-post numbers were not obtainable and are listed in the gaps. The single most important finding: the client-reported audience of roughly 1,000,000 Instagram followers and roughly 100,000 likes per post could not be verified on any handle linked to this brand, and it is directly contradicted by every account we could measure. The handle @precisionputting on Instagram is a near-empty account named "Barnes Sports Group" (16 followers, 2 posts). The brand needs to hand us the exact URL of the account it means before any follower or engagement claim can be treated as real.
Compounding this: the live Wix site does not correctly link its own Instagram. On every rendered page the Instagram icon points to instagram.com/accounts (a generic login redirect), not a profile. So even a real 1,000,000-follower audience currently has no working path from the website to the feed, and no path from the feed back to a tracked store.
Channel inventory (measured vs client-reported)
Measured means read directly from a public source on the date shown. Client-reported means stated by the client and not yet verified. "Not specified" means the client gave no number for that channel.
Format and engagement analysis
Only YouTube exposes per-item numbers publicly, so it is the clearest window into what content exists. The catalog there is product-education, not entertainment: setup tutorials ("First Time Setup", "Understanding the Grail Setup", "Adjusting your Grail"), a two-episode explainer series ("The Science Behind the Grail", "Special Guest Jack Kelly"), and a demo piece ("Putt Like a Machine"). The best performer was a mechanism-of-action explainer at about 2,200 views while most setup clips sat between 60 and 550 views. The signal, even at tiny scale, is that "why the trainer works" content out-pulled "how to assemble it" content.
The brand posture is inverted for direct response. Long instructional video lives on YouTube where almost nobody follows the brand, while the short-form platforms that actually sell golf gear (Instagram Reels and TikTok) are either dormant (TikTok, 5 videos) or point at the wrong or unlinked handle (Instagram). If the roughly 1,000,000-follower audience the client describes is real, it is stranded: there is no working site link to it, no shoppable tagging on the posts, and, per the tracking audit, no Meta Pixel, no Conversions API, no TikTok pixel and no GA4 on the store. That is the true engagement-to-sales gap. Reach cannot convert because there is no shoppable funnel, no link-in-bio store, and nothing installed to retarget a single viewer.
Recommendations