CRO and offer: what is actually mine to find
Internal working notes, pulled 1 Sep 2026. Not the client deliverable. Second person and byline treatment happens at the report-writing stage.
Scope note, stated plainly because this is the highest prior-art-risk workstream in the engagement. The incumbent agency, Nuuk, delivered a 22-page CRO audit in June 2026, a 13-page Stage 1 SOW, and a 9-page July 2026 proposal that re-prioritizes the SOW. Their Stage 1 project is live right now. Everything below was checked against all three documents in full (grepped and read, not summarized from memory) before being written down. Where a finding of mine turned out to already exist in their documents, it is marked PRIOR-ART and excluded from client-facing use, following the same convention Task 1 (10-shopify.md) established for this audit program. A small number of genuinely new findings is treated here as a good result, not a shortfall.
What would falsify these findings
- If Nuuk's Stage 1 or Stage 2 ships further changes after 1 Sep 2026,
every "as of today" claim below (the product-page accordion, the announcement-bar slider, the live discount codes) needs a re-pull before reuse in any client-facing document written after that date. Every live-site fact in this file carries its own pull date for exactly this reason.
- **If Meta Business Manager access (not available to this read-only
API pull) shows a link URL or product-set binding on the [Venda] and [Remarketing] cupom STRING10 ad creatives**, CRO-02 (the unresolved destination for purchase-optimized ads) is answered and should be struck or downgraded from UNKNOWN to whatever the real destination turns out to be. This task tried the read-only creative-fields route the Meta Ads MCP exposes and it came back empty for these specific ad IDs; that is a tooling limit of this pull, not proof the destination is broken.
- **If the on-site Klaviyo popup ("Protect Your Strings. Save 15% today.")
is scoped to fire only on a subset of pages or only once per browser session**, and this task's second page load (the flagship product) simply didn't re-trigger it for that reason, CRO-01's "the popup exists and competes with the 25% banner" claim still holds (the popup was directly observed, live, on the combo product page), but its exact page-scoping rules are UNKNOWN and would need Klaviyo dashboard access to confirm precisely.
- **If a full click-through checkout walk (not attempted here to avoid
creating unnecessary test orders and to stay inside a reasonable time budget) finds cart or checkout friction beyond what static and accessibility-tree checks surfaced**, that friction is not covered here and remains open ground for a follow-up pass.
- **If GA4's landing-page report (SEO-01's source) undercounts sessions to
the flagship UNLISTED page because of tracking gaps already flagged elsewhere in this audit** (30-tracking.md), CRO-03's "102 sessions land somewhere with no way back" framing understates the exposure, not overstates it.
- **If the client confirms the two
Nuuk_Welcome_Offerdiscount-code
batches (created 20 and 23 Aug 2026) were never actually wired to a live popup and are dormant test artifacts**, the "Stage 2 appears to be live or in test" read in the Stage 1 status section below needs to soften to "codes exist, delivery mechanism unconfirmed." This task could not check Klaviyo flow status directly (no Klaviyo credential in this engagement) and says so rather than guessing.
Prior-art exclusion list
Built directly from a full read of all three Nuuk documents (not from Task 1's summary, though the two lists agree everywhere they overlap, which is itself a useful cross-check). Verified against the source text with grep, not assumed.
| # | What Nuuk already found, recommended, or assumed | Where |
|---|---|---|
| N-1 | Single-SKU-with-variants model should split into multiple SKUs, one per design; enables collection pages, mega menu, per-design SEO, behaviour tagging | June audit, Category Page + 7P sections, p.10-11, p.17-18 |
| N-2 | Duplicate product listings should be consolidated into one canonical listing | SOW, "Product Page CRO (Core)"; July proposal Section 2, "Duplicate product consolidation" |
| N-3 | Direct "25% Off Limited Time Launch Sale" discount trains visitors to expect price drops and gives away margin without capturing a lead; should be replaced by an email-capture offer (June audit specifies 10% off; July proposal specifies "an A/B tested offer, e.g. 10% vs. a 20%") | June audit, First Impression + 7P sections; SOW, "Email Lifecycle Setup," £850; July proposal Section 3 |
| N-4 | Product description should move from one text block into an accordion (Description / How It Works / Specifications / Shipping & Returns) | June audit, Product Page P1 recs; SOW, "Structural fixes ... description converted to accordion" |
| N-5 | Reviews/star rating missing between title and price; Judge.me widget should be repositioned there | June audit, Product Page section; SOW, "Judge.me reviews widget repositioned near title/price" |
| N-6 | Add to Cart should sit above the fold on product page | June audit, Product Page P1 recs; SOW, "Structural fixes: Add to Cart above the fold" |
| N-7 | Mobile sticky Add to Cart bar; cart preview/overlay instead of redirect to cart page | June audit, Product Page section, P1; SOW "Cart & Checkout improvements" add-on (£250, July proposal) |
| N-8 | Announcement bar should become a rotating slider carrying Free Shipping / 30-Day Money Back / Patent-Protected Innovation, replacing the static 25%-off message | June audit, First Impression P1 recs |
| N-9 | Homepage rebuild, hero carousel, mega menu, Berlin theme migration | June audit, First Impression + Menu Navigation + UI sections; explicitly deferred to Stage 3 in the July proposal ("we recommend deferring all of it") |
| N-10 | Multi-SKU split deferred until a customizable-selector page is tested first; full split scoped separately as Stage 3 | July proposal Section 4 |
| N-11 | About Us page rebuild (Origin -> Mission -> Founder -> R&D/lab story -> CTA) | June audit, 7P section; SOW + July proposal add-on, £150 |
| N-12 | Checkout button colour clash; Shop Pay should be reordered behind Apple Pay/Google Pay as the primary express option | June audit, Checkout Process section; July proposal "Cart & Checkout improvements" add-on |
| N-13 | 1-click post-purchase upsell app | SOW + July proposal add-on, £250 + app subscription |
| N-14 | /pt should be unpublished and theme/ad elements routing to it flagged | SOW + July proposal add-on, £100 |
| N-15 | Currency dropdown defaults every country to USD; should show local currencies | June audit, Menu Navigation + 7P sections; July proposal add-on, £150 |
| N-16 | No true collection/category page; no grid, filters, sort, or behaviour tags | June audit, Category Page section, scored 24%/LOW |
| N-17 | Customizable design-selection UI (visual picker), replacing the current variant dropdown, as an interim step short of a full multi-SKU split | July proposal Section 2 |
| N-18 | "Product story" sections (What It Is / How It Works / Benefits) and a mobile-first gallery rebuild with lab-testing/patent messaging built into the images | July proposal Section 2 |
| N-19 | Footer restructure (3-column, guarantees row, newsletter, legal address); no mega menu | June audit, Menu Navigation section |
| N-20 | String ProTech's traffic is asserted to be "Meta ads, sent directly to the product page ... mostly mobile," used as the rationale for deprioritizing homepage work | July proposal Section 1, p.3. Boundary case, noted explicitly: this is a directional premise Nuuk states while also disclosing they had no Meta ad-account access to verify it ("we don't yet have visibility into current Meta ad account structure, spend, or performance," Section 5, p.7). It is not a verified message-match finding. This task's direct, credentialed check of the ad account (below) is new work, not a restatement, but the coarse "traffic goes to a product page, not the homepage" direction is Nuuk's stated assumption and is credited to them here for completeness. |
Two items checked and explicitly not found anywhere in Nuuk's documents, stated here because their absence is what makes the rest of this task's work possible to claim as new: a full-text search of all three documents for "Meta," "Facebook Ads Manager," "ad account," "ad campaign," "landing page," and "message match" returns zero hits in the June audit; the only "landing page" language in the SOW is generic contract boilerplate about landing pages Nuuk builds and owns for its crowdfunding-campaign clients generally (Section 4, "Access, Creative Assets and Rights"), not a claim about String ProTech's Shopify product pages or Meta ad destinations specifically. Second, neither document contains a single dollar figure, percentage, or word ("competitor price," "price point") discussing whether $59.99 is the right price level for this product; both documents discuss the discount mechanic only.
Anything below flagged PRIOR-ART maps to one of the N-numbered rows above and is excluded from client-facing use in its restated form. Where a finding sits on one of their topics but adds a specific, dated, live fact they could not have had (their documents predate today's site state, and neither had ad-account access), that new fact is kept and the row is marked PRIOR-ART: Partial, following the same convention Task 1 used for SHOP-06/07/08/09.
What Stage 1 (and, unexpectedly, Stage 2) appear to have shipped
Task 1 checked Stage 1's SOW-scoped deliverables against the 1 Sep catalogue and theme pull and found none of them shipped, with one flag handed to this task: accordion- and sticky-shaped markup already present in sections/main-product.liquid, undetermined whether that is Stage 1 landing in-flight or unrelated theme scaffolding. This task resolved that flag with a live, rendered page load rather than a static keyword scan, and found a materially different picture than the flat "nothing shipped" read, because Task 1's check was scoped to catalogue and template-JSON facts, not a rendered front end.
Confirmed live, 1 Sep 2026, on the combo product (/products/guitar-string-protection-case-and-custom-vinyl-sticker, the store's highest-traffic page at 1,113 GA4 sessions/90 days):
- A working accordion with four tabs: Description, How it Works, Shipping
Info, and "Check your guitar's fit before ordering." Three of the four labels line up closely with the SOW's specified set (Description / How It Works / Specifications / Shipping & Returns); the fourth is a compatibility-check tab rather than a generic Specifications tab.
- A star-rating summary ("3 reviews," clickable to the reviews section)
positioned directly under the product title, above the price block.
- A "How It Works" three-step section, a "See it in action" video row, a
"Customers are saying" strip, a full Customer Reviews module, and an FAQ accordion further down the page.
- A lab-test citation ("Independent laboratory testing by CTL... zero
degradation over five weeks") appearing mid-page.
Confirmed absent, same date, on the flagship $59.99 case (/products/string-pro-tech®, UNLISTED, noindex,nofollow per SHOP-03 and SEO-01):
- No accordion of any kind. The description renders as a long unbroken
text block with two inline lists.
- No "How It Works" step section, no video row, no FAQ.
- No star-rating summary between title and price; two reviews appear only
in a Customer Reviews module further down the page.
- A lab-test section does exist ("Proven Protection with Tested Results,"
with a working PDF download link), so the lab-credibility asset is not entirely missing here, just not surfaced the way it is on the combo page.
Read together, the product-page rebuild the SOW describes has landed, at least in large part, but only on one of the two purchasable case listings, and not the one carrying the flagship SKU or the one the store's own top-level branding (String Protech® Guitar String Protection Case) names. Whether this is a deliberate A/B-test control/variant split (the SOW does call for "A/B test setup and tracking for 2 weeks... against the current one") or an oversight cannot be determined from the outside; the SOW's own language supports either reading. What can be said directly: as of 1 Sep 2026, the page carrying the flagship SKU and the page the ad account's own remarketing campaigns most directly target by name (see message-match section) is the one that did not receive the rebuild.
Confirmed live, 1 Sep 2026, that neither Task 1 nor either Nuuk document anticipated finding:
- The homepage/product-page announcement bar is now a genuine two-slide
rotating carousel ("1 of 2" in the accessibility tree), not the static bar Nuuk's June audit describes. One slide reads "Free US Shipping"; the other still reads "25% Off Limited Time Launch Sale | Ending Soon." Of the three rotating messages the June audit specifies (Free Shipping / 30-Day Money Back / Patent-Protected Innovation), one shipped, and the message the audit explicitly says to remove is the other slide in the rotation rather than being dropped.
- A live on-page popup, observed on the combo product page: "Protect Your
Strings. Save 15% today. Join our mailing list for 15% off your first order, playing tips, and early access," with an email field and a "Get Offer" button, gated behind a Klaviyo-hosted form. This is close in spirit to the June audit's recommended "10% off email-capture floating widget" (P1, First Impression), but built at 15%, not 10%, and as a centred modal, not the specified left-side floating widget.
- Two batches of
Nuuk_Welcome_Offer-titled discount codes in Shopify,
each a set of unique single-use 10%-off codes: one created 2026-08-20 (expires 2026-09-04), one created 2026-08-23 (expires 2026-09-07), both status ACTIVE as of this 1 Sep 2026 pull. The naming and the batch-of-unique-codes shape (five-plus codes per batch, one use each) are consistent with an automated Klaviyo welcome-flow output, not a hand-typed code. Whether these are live production codes or a test batch could not be confirmed without Klaviyo dashboard access.
- A separate
STRING10discount code (10% off entire order, one use per
customer), live since 2026-06-30, predating any Nuuk artifact by seven weeks. It is referenced directly in the names of three [Remarketing] ad sets in the Meta ads account ("cupom STRING10"), but the checked live pages show no on-site promotion of this code anywhere (no banner slide, no popup, no on-page text mentioning it).
None of the three coexisting offers (25% banner slide, 15% popup, and the two families of 10% codes) appears to have been retired when the others were introduced. This is Stage 1/2 status, described here as fact; its CRO consequence is CRO-01 below.
Findings
ID format CRO-nn. Class: BLOCKS / CORRUPTS / WASTES / SUPPRESSES. Tier: HARD (pulled from a system or a live page, dated) / DERIVED (arithmetic or direct inference on HARD values) / INFERRED (reasoned from HARD facts, not directly measured) / UNKNOWN.
| ID | Finding | Evidence | Class | Tier | PRIOR-ART |
|---|---|---|---|---|---|
| CRO-01 | Three discount mechanics are live on the site at once, none retired for the others: a 25%-off announcement-bar slide requiring no email, a 15%-off Klaviyo popup requiring an email, and two live batches of 10%-off Nuuk_Welcome_Offer codes plus a separate, older STRING10 (10% off) code referenced in remarketing ad-set names but promoted nowhere on-site. A visitor who sees the free 25% banner has no rational reason to hand over an email for a smaller 15% discount underneath it; the entire commercial purpose of the email-capture mechanic (recovering non-buyers into a list) is undercut by the bigger no-cost-of-entry offer still running beside it. Checked live, 1 Sep 2026. | Live page loads (announcement bar, popup), 1 Sep 2026; Shopify codeDiscountNodes query, 1 Sep 2026 (STRING10, Nuuk_Welcome_Offer batches, both ACTIVE); meta-adsets.json (ad-set names referencing "cupom STRING10") | WASTES | HARD | Partial. N-3 and N-8 (replacing the 25% mechanic with a capture offer, and converting the top bar to a rotating slider, are Nuuk's own recommendations). The specific fact that three offers now coexist live, their exact rates and creation dates, and that the STRING10 code is invisible on-site despite naming a remarketing audience, are new and postdate both Nuuk documents. |
| CRO-02 | The two ad sets carrying the account's purchase-optimized [Venda] (Sales) campaign and the three [Remarketing]... cupom STRING10 ad sets use creative objects of object_type: SHARE with no queryable link_url and no product_set_id on the read-only Marketing API fields this task has access to. This task cannot confirm, from the ad-account side, which URL a click on these specific, highest-intent ads currently sends a visitor to. This matters because these ad sets carry real spend: [Venda] is one of the account's higher-spend campaigns, and GA4's landing-page report (all channels combined, not ad-set-attributed) shows 102 sessions/90 days on the UNLISTED flagship page, so the risk this leaves open is not hypothetical. | ads_get_creatives pull, 1 Sep 2026, ad IDs 52540286223812, 52540285907012, and siblings under adset 6994075424008 and adset 52538349915212/52538348943212/52538305228612; cross-checked against meta-adsets-promoted-object.json | UNKNOWN | UNKNOWN | No |
| CRO-03 | The flagship $59.99 case (UNLISTED, noindex,nofollow, absent from every collection and from sitemap.xml, per SHOP-03/SEO-01) receives 102 sessions/90 days across all channels (GA4). A buyer who lands there from any source, including a saved link, a direct type-in, or a paid click that this task could not fully trace (CRO-02), and leaves without buying, has no way back to that page: it cannot be found by search, is not listed anywhere on the site itself, and, as of today's check, also lacks the accordion, video, FAQ, and top-of-page review summary the store's other purchasable listing has (see Stage 1 status above). The consequence compounds for single-session, ad-driven traffic specifically, which is more likely than organic traffic to arrive with no memory of the exact URL. | SHOP-03, SEO-01 (cited, not restated); GA4 landing-page report (docs/status.md, ga4.txt); this task's live page checks, 1 Sep 2026 | SUPPRESSES | DERIVED | No |
| CRO-04 | The Stage 1 product-page rebuild (accordion, top-of-page review summary, video row, FAQ, "How It Works" step section) is live on the ACTIVE combo product page but entirely absent from the UNLISTED flagship case page, confirmed by direct comparison of both live pages, 1 Sep 2026. The highest-effort work in Stage 1's scope landed on the listing that already had an organic and paid path to it, not the one that is structurally unfindable. | Live page comparison, 1 Sep 2026 (see Stage 1 status section for full detail) | CORRUPTS | HARD | Partial. N-4 and N-5 (the accordion structure and the reviews-near-title placement are Nuuk's own SOW spec, verbatim). What is new here is not the presence of that work, it is where it landed: the finding is the asymmetric split across the two live case listings, dated 1 Sep 2026, which neither Nuuk document could have stated since both predate this build. |
| CRO-05 | The product's $59.99 price sits above both identified direct competitors ($34.95-$55, Task 5 COMP-04) and far above the free-to-$17 substitutes (wipe-down, coated strings, humidity packs) that independent, non-commercial content recommends first (Task 5 COMP-03). This store's own observed numbers are consistent with that gap: 19 paying orders in 12 months, a blended ROAS of 0.32, and a break-even point requiring roughly 314% gross margin (80-unit-economics.md, ECON-01/ECON-02, cited not restated). Neither Nuuk document discusses price level at all (confirmed by full-text search); both address the discount mechanic only. This is named here as a candidate root cause underneath the page-level fixes both this audit and Nuuk's have catalogued: a flawless product page selling a single-purpose $59.99 accessory into a category where the default independent answer is a free habit change has a structurally harder commercial job than conversion-rate fixes alone can close. No price recommendation and no revenue projection is offered; unit cost is UNKNOWN (Task 8), so the correct next step is a margin conversation with the client, not a number from this task. | COMP-03/COMP-04 (70-competitive.md), ECON-01/ECON-02 (80-unit-economics.md), cited not restated | WASTES | INFERRED | No |
Message-match analysis
What could be verified directly, with the ad account's own read-only API, 1 Sep 2026. The one creative family whose destination URL is queryable end to end is the [Engajamento] (engagement-objective) carousel ad and its companion single-image posts ("Every great guitar tone begins with one thing...," "Rust doesn't happen overnight..."). All child attachments on the carousel link to:
https://www.stringprotech.com/products/guitar-string-protection-case-and-custom-vinyl-sticker
?utm_source=facebook&utm_medium=paid&utm_campaign=engajamento&utm_term=post+07-08
That destination is the combo product: ACTIVE, listed, indexable, and, as of today's check, the page carrying the Stage 1 rebuild. The message match here is clean: ad copy about tone, rust, and string protection lands a click on a product page that visually and structurally follows through on that promise. This ad, however, is engagement-objective, not purchase-optimized; it is not the money.
What could not be verified. The account's two purchase-optimized structures, the [Venda] campaign (OUTCOME_SALES, one of the account's higher-spend campaigns) and the [Remarketing]... cupom STRING10 ad sets, serve creatives of object_type: SHARE referencing {{product.name}} literally in the internal creative name field, with no link_url and no product_set_id returned on any of the fields this task's read-only access exposes (CRO-02). This looks structurally like a boosted native post or an Instagram Shopping-tagged post rather than a classic dynamic catalog ad, but that could not be confirmed without Business Manager access this engagement does not hold.
The best available proxy, disclosed as a proxy, not a measurement. GA4's landing-page report (all channels combined, 90 days, 2026-06-02 to 2026-08-31) shows the overwhelming majority of sessions, paid and organic together, landing on the combo product (1,113 sessions) rather than the flagship case (102 sessions). If the purchase-optimized ad sets behave the way the visible engagement ad does, that is a reasonably healthy pattern: most traffic, from whatever source, reaches the listing that actually works. But 102 sessions on a page with zero organic recovery path is not nothing, and this task cannot rule out that some or all of the [Venda] / cupom STRING10 traffic is the source of those 102 sessions specifically. The single most useful next step for the client or their next agency: open the [Venda] campaign and the cupom STRING10 ad sets directly in Meta Ads Manager (this task's API access could not do this) and confirm their destination URL against the flagship-versus-combo split described above. That is a five-minute check inside a UI this task's credentials cannot reach, and it would close CRO-02 and sharpen CRO-03 in one pass.
On the ad-set naming itself. The cupom STRING10 label appears only in the internal ad-set name, an operator-facing field, not confirmed to be visible ad copy. Whether the actual creative text shown to a remarketing visitor mentions the STRING10 code at all could not be checked, because these specific creatives returned no body field via the API (see CRO-02). If the code is named in the ad set but never appears in the visible ad or on the site, a remarketing visitor targeted specifically because they already visited once has no way to redeem an offer built for them; that would be a genuine message-match failure, but it is stated here as an open question, not a confirmed finding, because the evidence to confirm or refute it sits behind API access this task does not have.
Raw evidence appendix
- Meta creative pulls (
ads_get_creatives,ads_get_ad_preview), 1 Sep
2026: creative IDs 1568298808267870, 2153095488954867, 4343132925937546, 1599066185195462, 2044825256119035 (link URLs and body text confirmed); 1374862234545388, 1938729183446560, 1566236472182674, 1656341025652979, 1000482696239059 (SHARE-type, no link_url/product_set_id returned, CRO-02).
- Shopify discount-code state, 1 Sep 2026:
codeDiscountNodes(active),
full list includes GusBand1969!, Hexx100, Martin15, STRING10, Nuuk_Welcome_Offer (2026-08-20 11:08), Nuuk_Welcome_Offer (2026-08-23 11:28). automaticDiscountNodes also pulled (bundle-quantity discounts on stickers and cases, not directly relevant to this task's findings). Saved verbatim to data/_snapshots/2026-09-01/cro-shopify-discount-codes-active.json and data/_snapshots/2026-09-01/cro-shopify-discount-automatic.json.
- Live page checks, 1 Sep 2026, mobile viewport (390x844): combo product
page (/products/guitar-string-protection-case-and-custom-vinyl-sticker) and flagship product page (/products/string-pro-tech®), both loaded fresh, accessibility tree captured for each. Confirms the announcement-bar slider state, the Klaviyo popup copy, the accordion presence/absence split, and the reviews-near-title split described above. Rendered HTML saved to data/_snapshots/2026-09-01/cro-product-combo.html and cro-product-flagship.html (covers the accordion, the announcement-bar slide text, and the reviews-near-title markup, all present in static HTML); the Klaviyo popup and the live carousel state, which are client-side and not present in static HTML, are saved separately as the captured accessibility tree in cro-live-popup-and-slider.md, same directory. The store is under active, ongoing changes by another agency, so these dated snapshots, not the live URLs, are the citable evidence for any claim in this document written after 1 Sep 2026.
- GA4 landing-page distribution:
docs/status.md,data/_snapshots/2026-09-01/ga4.txt. - Competitive and unit-economics figures cited, not re-derived:
docs/audit/70-competitive.md (COMP-03, COMP-04), docs/audit/80-unit-economics.md (ECON-01, ECON-02).