What I found
What already works
Purchases reach GA4
The Google & YouTube app sends purchases to GA4 G-RWJR8FYX9M ("CMPTEAMWEAR - GA4"). It matched Shopify's orders when checked on 10/15. Keep it as the single source for purchase events.
Store synced to Mailchimp
Store, 432 products, 23,211 customers and orders are syncing into the CMPSW audience. Abandoned cart and abandoned browse automations are available on it. E-commerce link tracking is on for every campaign.
Also seen: a migrated Google Analytics pixel still sends full order data to G-G5FGDK3W7E, a GA property that isn't in any of your accounts. Mailchimp's own Google Analytics link tagging is on for 11 of the last 12 sends and stamps names like EMAIL_CAMPAIGN_2026_10_08 over our campaign names. Traffic is roughly 90 sessions a day, so the numbers will stay small until emails and ads point at the store.
Site map
Shoppers browse by what the thing is (tee, hoodie, shorts), not by sub-brand. So the mega menus are organized by product type, and the sub-brands (Wrstlg Dept, college, collabs) get their own doors. This keeps the 9/19 nav and adds two top slots for the new pushes.
| Top nav | Mega menu columns | Promo tile in menu |
|---|---|---|
| New | New Arrivals · Best Sellers · Back in Stock | Latest drop |
| Men / Women / Youth | Tops: Graphic Tees · Long Sleeves · Hoodies · Crews · Performance Polos Bottoms: Performance Shorts · Fleece Pants · Cutoffs Hats: Trucker Hats · All Hats | Fleece feature |
| College new slot | School grid (logo per school) · Shop all college | Gameday clip of the newest school |
| Wrstlg Dept | Tees · Fleece · Bottoms · Hats | Streetwear lookbook |
| Gear new slot | ProShield Headgear · Headgear Wraps · Chin Cups · Knee Pads · Bags (Stratos) | Headgear + wrap + chin cup set |
| Collabs | Elite 8 · PNL · Stilly Boys · CMPWC | Current collab drop |
| Deals | Last call / overflow stock (text link, accent colour) | None |
Footer: Team & School Orders → cmpsportswear.com, Size Guide, Shipping & Returns, Contact. Men/Women/Youth share one product-type menu, so a new tee shows up everywhere once it's typed and tagged (see Catalog).
Homepage sections
Every block is a native Pipeline section. One job per section; nothing that needs a custom app to launch.
| # | Section (Pipeline) | What it does | Interaction |
|---|---|---|---|
| 1 | Announcement bar | Free-shipping threshold + link to the newest drop | Rotates two messages |
| 2 | Header + mega menu | Nav above with promo tiles | Sticky; product images in menus |
| 3 | Hero video | One drop at a time (now: the Wrstlg Dept × Elite 8 take). One button. | Plays once, holds the last frame, no loop |
| 4 | Collection list | Six category tiles: Tees · Fleece · Bottoms · Polos · Hats · Gear, ghost-mannequin product on the catalog sweep | Image rollover to a second product |
| 5 | Tabbed product carousel | New · Best Sellers · Men · Women · Youth, swapped in place | Quick buy + colour swatches on every card |
| 6 | Before/after pair | The "train in it, wear it out" showcase: the same tee or hoodie shot in the training room on one side and out at night on the other | Shopper drags the divider; products linked under it |
| 7 | Image hotspot (lookbook) | A full outfit: hoodie, cutoffs, trucker. Each hotspot is a product. | Tap a dot → quick view → add to cart without leaving |
| 8 | Logo list + video | College strip: one logo per school → its page, with a gameday clip | Clip plays once on scroll-in |
| 9 | Image with text + featured collection | Wrstlg Dept streetwear band, four products | Swatches + quick buy |
| 10 | Featured product | Gear spotlight: ProShield Headgear with Black/White swatches, wrap and chin cup as add-ons | Add the set in one click |
| 11 | Testimonials / reviews | Real reviews once a platform is picked (still open from v1) | Carousel |
| 12 | Newsletter | Mailchimp signup, tagged RETAIL_SIGNUP so retail buyers can be emailed as their own group | Inline success, no popup on first visit |
How each line is shown
Graphic tees & long sleeves
- Collection banner: one line of attitude, one lifestyle shot (training + out)
- Filters: Use (Train / Everyday), Fit, Fabric weight, Colour, Size, Gender
- Callout row: real specs from the product data only (e.g. "6.0 oz heavyweight cotton" where that's the actual blank)
- Promo tile mid-grid → the hoodie that pairs with it
Fleece: hoodies & crews
- Pill sub-nav: Hoodies · Crews · Long Sleeves
- Swatch on every card swaps the photo (needs a photo per colour)
- Lookbook hotspot image at the top: hoodie + fleece pant/cutoff + hat
- "Complete the fit" row on every product page
Bottoms
- Pill sub-nav: Performance Shorts · Fleece Pants · Cutoffs
- Size chart in a pop-up on every bottoms product (inseam + waist)
- Cross-sell: matching top from the same line
Performance polos & trucker hats
- Polos: clean grid; size chart; "pairs with" a hat
- Hats: one-size, so no size friction. Use as the slide-out-cart add-on that tips orders over the free-shipping line.
College
- Hub page: school grid (official marks), newest school first
- Each school page: school-colour banner, gameday clip that plays once, products filtered by type, a short intro written for search ("Oklahoma State Wrestling Apparel")
- Copy is wrestling-only; marks locked per CLC rules
- Never say made-to-order or print-on-demand to shoppers
Gear
- Headgear, Headgear Wraps, Chin Cups, Knee Pads, Bags
- Headgear page: colour swatches with photos (fixed 9/30), a product-tabs block for fit and care, and the wrap + chin cup as one-click add-ons
- Stratos: colour swatches over the real colourway photos; needs your call on single-bag retail (see Decisions)
Wrstlg Dept
- Streetwear, off the mat: lookbook first, grid second
- Back-print photos as the second image on every card (rollover)
Collabs
- Elite 8, PNL, Stilly Boys, CMPWC, each a page with its own banner
- Event drops get a countdown section only while the drop is live
Product page
The UNRL-style stack from v1 stands (gallery, swatches as photo crops, size picker, accordions, conviction line, feature bullets, complete-the-fit, reviews). Added for this round:
Sticky add-to-cart
On phones the button stays visible while scrolling the details.
Size chart pop-up
Per product type: tees, fleece, bottoms, polos.
Product tabs
Details · Fit · Care, filled from product data, not typed per page.
Stock counter
Shows only when a size is low. Never fake urgency.
Complete the fit
Hand-picked pairing per product (tee → fleece pant → hat; headgear → wrap → chin cup).
Recently viewed
Bottom of the page, plus the slide-out cart upsell.
Interactions
| Where | Behaviour | Why |
|---|---|---|
| Product cards | Swatch hover swaps the photo; second-image rollover; quick buy (size picker in the card) | Fewer clicks to cart |
| Quick view | Full product in a drawer from any grid, hotspot or carousel | Shop the lookbooks without leaving them |
| Slide-out cart | Free-shipping progress bar + one add-on (hat, wrap, socks) | Raises order value |
| Filters | Swatch filters for colour; Use (Train/Everyday) as a filter, not a separate store | Lets one catalog serve both stories |
| Search | Live product suggestions as you type, with images | Most shoppers who search, buy |
| Video | Plays once when scrolled into view, holds the last frame, never loops | Your 9/25 rule |
| Before/after | Drag to see the same piece in the gym and out | The positioning in one gesture |
| Signup | Inline in the footer and on the homepage; no popup until the second page view | Doesn't block the first look |
Catalog cleanup
Filters, smart collections, the Google Shopping feed and the tracking all read three fields. Get them right once and collections maintain themselves.
1 · Product type
One per product from a fixed list: Graphic Tee, Long Sleeve, Hoodie, Crewneck, Performance Short, Fleece Pant, Cutoff, Performance Polo, Trucker Hat, Headgear, Headgear Wrap, Chin Cup, Knee Pad, Bag, Singlet, Fight Short. 38 are blank today.
2 · Tags
line:wrstlg-dept · line:college · school:osu · collab:elite-8 · use:train · use:everyday · gender. Internal tags (fulfilment, samples) stay out of shopper filters.
3 · Shopify category + photos
The real Google category on each product, and a photo on every colour variant so swatches swap correctly.
Collections: 78 down to about 30
Every collection becomes a smart collection built from type + tags. The 25 empty ones and the duplicates are removed, and each removed address gets a 301 redirect to its replacement, so no old link or Google listing breaks. "- N" comes off every title.
SEO plan
| Fix | What | When |
|---|---|---|
| Titles & descriptions | Template: Wrestling Hoodies | Compound Sportswear. New homepage title and description (today's is about shooter sleeves and socks). Remove "- N" everywhere. | current theme |
| One H1 per page | Product name on products, collection name on collections. Neither has one today. | Pipeline build |
| Structured data | Product + Offer (price, stock, barcode), BreadcrumbList on every product and collection, Organization on the homepage. This is what puts price and stock in Google results. | Pipeline build |
| Collection intros | 80–150 words on the money pages: hoodies, tees, fight shorts, headgear, and each school ("Nebraska Wrestling Apparel"). | With the build |
| Image alt text | Product name + colour on every image, filled automatically. | current theme |
| Redirects | 301 every removed or merged collection and every renamed product. | Catalog cleanup |
| Shopping feed | Product types and categories feed Merchant Center (already connected through the Google app). | Catalog cleanup |
| Internal links | cmpsportswear.com nav and blog posts link to retail products and school pages. | After launch |
| Speed | Compressed hero video, sized images, lazy-loaded sections (Pipeline does this natively). | Pipeline build |
Tracking & attribution
The answer comes from three places that should agree
Mailchimp
Campaign report → Revenue and Orders. Needs the store connection fixed and retail links in the email.
GA4 (CMPTEAMWEAR)
Traffic acquisition → session campaign = our 26_slug → purchase revenue.
Shopify
Analytics → Marketing → sales by UTM campaign. Works even if Mailchimp misses an order.
Email → sale fixes, in order
- Reconnect Mailchimp for Shopify to the right account. The storefront loads code from Mailchimp user
caea6d10da; the store is connected to the account that owns the CMPSW audience. Until they match, no click from any email can be credited. - Retail emails link to retail product pages. Every product shown in a send links to its page on retail.cmpsportswear.com.
- One UTM system. Every link through
CMPSW_HQ/tools/utm.py(utm_source=mailchimp,utm_medium=email,utm_campaign=26_slug). Turn Mailchimp's Google Analytics auto-tagging off so it stops overwriting the campaign name. Keep Mailchimp's e-commerce link tracking on. - Widen the attribution window in Mailchimp's attribution settings, beyond the 24-hour default, so a buyer who comes back the next day still counts.
- Turn on abandoned cart and abandoned browse on the synced store. They're the cheapest retail revenue there is.
Sales on the Chipply fan stores can't be credited in Mailchimp because Chipply isn't connected; those keep coming from the Chipply store reports by date.
Google Tag Manager on the store
Shopify's checkout only allows tracking through Customer Events (a sandboxed pixel), so GTM goes in there as a custom pixel, not pasted into the theme. A retail container of its own keeps it separate from the cmpsportswear.com container (GTM-596ZRXTC).
| Shopper action | Event sent | Source |
|---|---|---|
| Views a collection / search results | view_item_list, search | Shopify standard event |
| Clicks a product card | select_item | Theme event |
| Views a product | view_item | Shopify standard event |
| Adds to cart / opens cart | add_to_cart, view_cart | Shopify standard event |
| Starts checkout / adds payment | begin_checkout, add_payment_info | Shopify standard event |
| Buys | purchase | Stays on the Google & YouTube app, so it's never counted twice |
| Uses a filter, swatch, size chart, quick view, hotspot, before/after, video, school tile | filter_applied, swatch_selected, size_chart_open, quick_view, hotspot_click, compare_drag, video_complete, school_select | Theme events, published to the pixel |
| Signs up | sign_up (with the campaign that brought them) | Theme event |
Pixel cleanup
- Remove the migrated Google Analytics pixel sending orders to the unknown
G-G5FGDK3W7E. - Replace the migrated Meta pixel with Meta's own sales channel (adds server-side purchase tracking); TikTok the same way. Both need your login to approve.
- GA4: mark
purchaseandsign_upas key events; add the UTM campaign as a dimension.
Build order
- Tracking first, on the current store (this week): Mailchimp reconnect, auto-tagging off, leaking pixel removed, GTM custom pixel, GA4 key events. It all carries over to Pipeline and starts collecting now.
- SEO quick wins on the current theme: titles, descriptions, "- N" removal, alt text.
- Catalog: product types, tags, categories, variant photos; smart collections; 301s.
- Pipeline build on the unpublished theme: nav, homepage sections, department pages, product page, structured data. Preview link only. Nothing goes live without your sign-off.
- New products: headgear wraps, Stratos for retail, polos, trucker hats, the college lines.
- Launch after your review, then remeasure at 30 days with the three revenue sources above.
Decisions I need
- Nav: add College and Gear as their own top slots (changes the 9/19 nav, where college sat under Collabs)?
- College: sold on this Shopify store (products added here), or do school pages link out to the Chipply stores? Which schools go first?
- Stratos on retail: HQ has it as a team product with a 20-bag minimum. Single-bag retail price, sizes (45L / 30L) and colours?
- Headgear wraps: photos, colours and price. They aren't in the catalog yet.
- Free-shipping threshold for the bar and the cart.
- OK to remove the pixel sending orders to the unknown
G-G5FGDK3W7E, and to merge/delete the 25 empty and duplicate collections with redirects? - Access: reconnect the Shopify connector in your Claude connector settings (I cut it off on 9/29), or I'll keep working in your Chrome. Mailchimp reconnect and the Meta/TikTok channel approvals need your login either way.
- Reviews platform (still open from v1): Judge.me, Yotpo or Okendo.