GTM One-Pager  ·  Product Launch  ·  WeShop
Audience Segmentation Builder
From broadcast to precision targeting
Go-live w/c 14 July 2026
Lead time ~6 weeks (brief to live)
PMM ownership Taxonomy · UAT · Brief · Campaigns
Live in production  ·  First in WeShop history
160K+ subscribers reachable via segmented sends
17 attributes across 4 audience tiers
GTM checklist owner appointed for all subsequent launches
Before  ·  Broadcast only
Every send reached all 160K+ subscribers with the same content - regardless of interest, behaviour, or lifecycle stage.
A fashion-uninterested user received the same fashion-heavy newsletter as a fashion-interested user. A first-week user received the same email as a 12-month veteran.
After  ·  Precision targeting
Segments built from 17 attributes across interest, behaviour, demographics, and lifecycle stage - applied to email, push, and in-app placement.
Travel-interested users see travel retailers. Fashion users see fashion. New users get onboarding content. Lapsed users get re-engagement copy. The right content reaches the right person.
Commercial story for merchant partners: "We can now tell a retailer: we put you in front of users who are already interested in your category - not the whole user base." This shifts the pitch from broadcast reach to targeted relevance - closer to what merchants expect from paid digital advertising.
Tier
Example segments & attribute logic
Reach (UAT)
Tier 1
Demographic
Gender = Female  ·  Account Age < 7 days  ·  Account Age > 7 days
F: 2,715
New: 40
Tier 2
Interest
Interest Category = Travel  ·  Interest = Fashion  ·  Home & Lifestyle  ·  8 categories total
Travel: 33
(full segment)
Tier 3
Behavioural
Purchase Count = 0 → first-purchase nudge  ·  Verified = False → profile completion  ·  Favourite Retailers = 0 → add a favourite
Task-based
Tier 4
Combined rules
Multi-attribute intersections using AND/OR/NOT  ·  Example: Female AND Interest = Fashion AND Purchase Count = 0
Variable
The rule precedence question
Account Age < 30 days AND Interest = Fashion, OR Interest = Automotive
Does this evaluate as (Account Age < 30 days AND Interest = Fashion) OR (Interest = Automotive) - opening the expression to any Automotive fan regardless of age - or as Account Age < 30 days AND (Interest = Fashion OR Interest = Automotive)?
Finding - caught in UAT before go-live
The system evaluates AND/OR left-to-right with no grouping. The first interpretation is correct - OR re-opens the entire expression. This means a segment built as Account Age < 30 days AND Interest = Fashion, OR NOT Verified would match every unverified user in the database - collapsing a targeted new-user segment into a near-full-list send.

Fix: boundary conditions must repeat in every OR clause. Rule written into Confluence documentation as a standing constraint. Approval gate added - all OR-logic segments reviewed before activation.
The brief led with what was staying the same before introducing what changed - P1/P2/P3 pricing untouched, sponsored placements always take priority, only unsold Discover slots receive interest-based backfill. This sequence was deliberate: reduce the change-anxiety before explaining the new capability.
"Think of it as a digital billboard, not a printed one. The same five slots can show different content to different audiences - depending on who's looking." Verbal explainer used in commercial briefing session
Process note - go-live sequence
Engineering go-live moved faster than the formal commercial presentation. Commercial discovered changes were live mid-call. Managed transparently in the call - acknowledged the gap, produced the documentation suite over the following days. Learning: any go-live touching commercial needs a communication step before deployment, regardless of how quickly the technical decision moves.
First segmented send
Travel interest pilot - 33 contacts (full Travel-declared segment), 87% Mailjet match rate. Proof-of-concept for interest-based targeting mechanics.
Documentation produced
3 documents: Confluence technical reference (17 attributes, rule structure, placement config), ClickUp Placements 2.0, commercial brief v3.
Role recognition
Appointed GTM checklist owner for all subsequent WeShop product launches by the Head of Product - direct consequence of this launch ownership.
Data gap surfaced
33 Travel-interested users out of 160K+ showed most users hadn't completed interest preferences - fed into profile completion work in the 12-month CRM plan.
Launch metrics
17
Confirmed attributes - account age, AOV, purchase count, interest category, gender, verified status, referral count, favourite retailers
160K+
Subscribers reachable via segmented sends - first time WeShop could move beyond full-list broadcast
AND/OR
Left-to-right evaluation confirmed in UAT - precedence finding caught before any live segment was activated
3
Documentation deliverables produced: Confluence ref, ClickUp Placements 2.0, commercial brief v3
Stakeholder map
Product Nick - brief owner, go-live decision, billboard analogy
Engineering Gareth's team - builder development; UAT flagged to engineering for AND/OR fix
Commercial James & Ed - brief recipients; discovered go-live mid-call; managed in real time
PMM Taxonomy design, UAT validation, documentation suite, commercial brief, first pilot campaign
Timeline
Jun 2026 Brief assigned - 1:1 review with Nick; goal formalised
Jul 1-13 UAT window - taxonomy designed, AND/OR finding caught, Confluence doc v1 produced
13 Jul Nick resignation - commercial presentation not yet delivered
w/c 14 Jul Go-live - engineering-driven date; first segmented send capability live
17-29 Jul Commercial brief v1→v3 - produced post-go-live; Travel pilot built in Mailjet
What I'd do differently
Process learning
Commercial communication should be a gate, not a parallel track. The go-live moved faster than the brief - which meant commercial discovered changes live rather than being prepared for them. The fix is straightforward: any feature with commercial implications needs a defined comms step as a prerequisite for go-live sign-off, not a follow-up task.