Proposal Website Development
Ecommerce · fashion brand

Scaling the website channel

4 levers → my scope → base first → execute by priority → margin control → 3·6·12 roadmap

Huỳnh Phúc Hảo

hao.dmp@gmail.com · +84 981 559 693 · linkedin.com/in/phuchao

00

Mindset

Revenue mindset

4 levers, each owned by a team

Revenue=Visitors×CR×Frequency×AOV

ROOT

Revenue

Visitors × CR × Frequency × AOV

LEVER 1

Visitors

unique visitors

Drill-down

By sourceNew vs returning

Owners · priority

  1. 1Ads (Paid Social)
  2. 2Social
  3. 3SEO
  4. 4CRM · Zalo
  5. 5KOC · Affiliate
  6. 6PR
→ Execution #4
LEVER 2

CR

buyers ÷ visitors

Drill-down

ATCCheckoutPayment

Owners · priority

  1. 1IT · UX/UI
  2. 2Content
  3. 3Marketing · scheme
  4. 4Warehouse
→ Execution #1
LEVER 3

Frequency

orders ÷ buyers

Drill-down

Repeat rateDays between orders

Owners · priority

  1. 1CRM
  2. 2Product · new drops
  3. 3Sale Online
→ Execution #2
LEVER 4

AOV

revenue ÷ orders

Drill-down

Items / orderPrice / item

Owners · priority

  1. 1Marketing · bundles
  2. 2IT · recs
  3. 3Product
→ Execution #3

Teams × levers

TeamVisitorsCRFrequencyAOV
Ads (Paid Social)●
Social●
SEO●
KOC · Affiliate●
PR●
CRM · Zaloowned trafficrepeat
IT · UX/UIUX · checkoutrecs
Contentimages · size · reviews
Marketingschemebundles
Warehousein stock
Productnew dropsmix · price
Sale Onlineservice · repeat
Contribution margin=Revenue − returns − marketing − COGS − shipping
Website leadPlan · KPI · weekly sync across all 4 levers
01

Scope of work

What I own to move the 4 levers

My scope, by lever

Own · I do itLead · I plan, team executesSupport · team owns, I briefBold = my priority · faded = lower priority
PRIORITY #1 · LEVER 2

CR

  • OwnDaily funnel ATC → checkout → payment
  • OwnTest backlog · UX briefs
  • LeadSize guide · reviews · product info
  • LeadCart · browse · welcome flows
  • OwnCheckout UX redesign (IT builds)
  • SupportPhoto & content production

KPI · CR · ATC · return rate

PRIORITY #2 · LEVER 3

Frequency

  • OwnSegments · lifecycle map
  • LeadPost-purchase · review flows
  • LeadWin-back · new-drop flows
  • SupportDaily sends (CRM team)
  • SupportCustomer service (Sale Online)

KPI · Repeat rate · cart recovery

→ CRM flows
PRIORITY #3 · LEVER 4

AOV

  • Own3-layer promo design
  • OwnMargin check per campaign
  • LeadBundles · voucher threshold
  • SupportRecs engine build (IT)
  • SupportPricing · assortment (Product)

KPI · AOV · items / order · margin

PRIORITY #4 · LEVER 1

Visitors

  • OwnTracking GA4 · GTM · CAPI · UTM
  • OwnLanding per campaign
  • LeadCampaign calendar · banner briefs
  • SupportAds buying
  • SupportSocial content · SEO · KOC

KPI · Quality visitors · ROAS · owned share

ALL LEVERS

UX/UI & site features

  • OwnUX audit · wireframes · feature roadmap
  • OwnFeature priority by revenue impact
  • LeadBuild & A/B test with IT
  • SupportCoding · QA (IT)

KPI · CR · AOV · page speed

→ Feature roadmap
ALL LEVERS

Merchandise & data

  • OwnVelocity forecast · reorder / bundle / clear list
  • OwnWeb P&L monthly
  • OwnReporting automation · daily dashboard (Claude Code)
  • SupportStock moves (Warehouse)

KPI · Contribution margin

GOVERNANCE

Operating rhythm

  • OwnDaily · 4-lever check
  • LeadWeekly · team sync · test results
  • OwnMonthly · P&L · post-mortem
  • LeadQuarterly · UX roadmap

KPI · On-time decisions

02

Strategy

Sequencing

Fix CR · Frequency · AOV first, then scale Visitors

Baseline first

1

Product page & checkout

Size guide · reviews · mobile checkout · stock

CR
2

CRM flows

Cart · post-purchase · welcome

Frequency
3

Promo scheme · bundles

3 layers · margin guardrail

AOV
4

Data & automation

GA4 · CAPI · catalog feed · dashboards

All
thenVisitors ↑

Same visitors, better result

MetricTraffic firstBase first
CRLowHigher
ROASFalls as spend ↑Holds as spend ↑
FrequencyOne-off buyersCaptured by CRM
AOVFlatUp via bundles
Return rateHighLower
MarginBought with discountsProtected
03

Execution by lever

Priority #1 · CR

Onsite fixes

Fix by stageATC→Checkout→Payment
Bold = fix firstFaded = later
STAGE 1

ATC · product page

  • IT · ContentSize guide by size picker
  • CRM · ContentReview ask after delivery (99 sold · 0 reviews)
  • ContentFabric · fit · model size (not "N/A")
  • ContentPhoto · video refresh

KPI · ATC rate · return rate

STAGE 2

Checkout

  • IT · UX/UIFewer mobile steps · saved address
  • Marketing1 promo mechanic per collection (now 4 stacked)
  • IT · UX/UIGuest checkout · progress bar

KPI · Checkout rate · margin

STAGE 3

Payment

  • ITShow COD · wallet · bank QR upfront
  • ITRetry flow for failed payment
  • MarketingInstalment option

KPI · Payment success rate

Example audit · public site onlyValidate with GA4 data in month 1
Proposal · All levers

UX/UI & site features roadmap

Now = build firstLater = after dataI spec · IT builds · A/B test
FOR CR

Convert more

  • NowSize guide · fit finder
  • NowPhoto reviews
  • NowSticky add-to-cart (mobile)
  • Now1-page checkout · COD · QR · wallet
  • LaterLow-stock badge
  • LaterLive chat · Zalo chat

Lever · CR

FOR AOV

Bigger baskets

  • NowFree-ship progress bar
  • NowComplete-the-look recs (same gender)
  • NowBundle builder · top + bottom
  • LaterVoucher picker in cart

Lever · AOV

FOR FREQUENCY

Come back

  • NowWeb push opt-in
  • NowBack-in-stock alert
  • LaterWishlist
  • LaterMember points · tier

Lever · Frequency

FOR VISITORS

Get found · load fast

  • NowImage compression · lazy load
  • NowCollection SEO · H1 · text
  • LaterCatalog feed for dynamic ads

Lever · Visitors

Proposal · Priority #2 · Frequency

CRM automation flows

EmailWeb pushZNSSMS
#FlowTriggerEmailWeb pushZNSSMSLeverKPI
1Cart abandonCart, no checkout●●CRCart recovery
2Post-purchaseOrder · delivered●●FrequencyReviews · cross-sell
3WelcomeSign-up · first visit · welcome code●●CRFirst order rate
4Browse abandonView product, no cart●●CRReturn visits
5Win-backNo order 90–180 days●●●FrequencyReactivated buyers
6Repeat · new dropsDays since order · new collection●●FrequencyRepeat rate
★Campaign blastSale · Seasonal · New arrival●●●●VisitorsOwned sessions
Flows = baseline revenueBlasts = campaign upliftSMS · ZNS for high-value only
Proposal · Frequency · flow map

Automation flows · detail

Now: 1–4Later: 5–6Orange = discount step · last only
1 · Cart abandonKPI: cart recovery · Lever CR
TriggerAdd to cart · no checkout
→
+1hCart items · size & stockEmail · push if anonymous
→
+24hStill in your cartWeb push
→
+48hReviews · social proofEmail
→
+72h · cart ≥ AOV · no other codeSmall code · 48h expiryEmail
→
ExitOrder placed
2 · Post-purchaseKPI: reviews · 2nd order · return rate ↓ · Lever Frequency
TriggerOrder placed
→
0hConfirm · size & care tipsEmail
→
Delivered +3dReview requestZNS
→
+7dComplete the lookEmail
→
+14d · no return2nd-order code (full-price)Email
→
+30dNew arrivals in same categoryWeb push
→
Exit2nd order → Repeat flow
3 · WelcomeKPI: first order rate · Lever CR
TriggerSign-up popup · first visit
→
0hWelcome code · 7 daysEmail
→
+2dBestsellers · brand storyEmail
→
+4d · push opt-inNew arrivalsWeb push
→
+5dCode expires in 2 daysEmail
→
+7d · no orderFit help · size guideEmail
→
ExitFirst order → Post-purchase
4 · Browse abandonKPI: return visits · add-to-cart · Lever CR
TriggerView product ≥ 2× · no cart
→
+2h · push opt-inProduct viewedWeb push
→
+24h · known emailViewed + similar itemsEmail
→
ExitAdd to cart → Cart flow
5 · Win-backKPI: reactivated buyers · Lever Frequency
TriggerNo order 90 days
→
90dNew since your last visitEmail
→
+7dNew arrivalsZNS
→
120dTiered offer by past valueEmail
→
150d · high-value onlyLast callSMS
→
180dSunset · suppress
6 · Repeat · new dropsKPI: repeat rate · full-price share · Lever Frequency
Trigger30 / 60 days since order
→
0hNew drop in bought categoryEmail
→
+1dSame dropWeb push
→
EventBack in stock · wishlistEmail + push
→
ExitOrder → Post-purchase
One flow at a time · Cart > Browse > WelcomeMax 1 marketing message / dayExit on purchaseNo stacked codesQuiet hours 21h–8hZNS = care & transactional only10% holdout
Proposal · Priority #3 · AOV

Promo scheme · main programs

Structure · 3 layers

LAYER 1 · PRODUCT

Discount

→ CR

LAYER 2 · CHECKOUT

Voucher threshold

80K off 699K+ → AOV

LAYER 3 · BUNDLE

Bundle · recs

Top + pants 899K → items / order

Add-onsFree-ship thresholdMember priceGift with purchaseFlash sale
Margin checkAfter all 3 layers, margin ≥ minimum (e.g. 40%)

Main programs · proposed

#ProgramMomentsMechanicLever
0Welcome · new userAlways on · sign-up popupFirst-order code (e.g. 50K off 499K+, 7 days, 1 use, full-price items) → 2nd-order code after deliveryCR Frequency
1Payday 25Every monthVoucher threshold · free-ship tierAOV
2Seasonal giftingTết · Valentine · 8/3 · ChristmasGift bundles · gift with purchaseAOV
3New collectionSummer drop (Apr) · Back to school (Aug) · Fall drop (Oct)Full price · early access for membersFrequency
4Mega sale5.5 · 6.6 · 9.9 · 11.11 · 12.12Flash sale · 3 layers with margin capVisitors AOV
5ClearanceEnd of summer (Jul) · year-end (Dec)Discount + clearance bundlesAOV
Draft · align with brand dropsEvery promo passes margin check
Proposal · Scale what works

Category & product tiers

Step 1Category tier→Step 2Product tier inside each category→Step 3Scale · fix · cut
TierSignalActionLever
A · HeroHigh revenue · high margin · high CRScale traffic · homepage · ads budgetVisitors
B · RisingHigh CR · low trafficPush traffic · CRM blast · banner slotVisitors
C · LeakingHigh traffic · low CRFix size · content · price · stockCR
D · TailLow traffic · low CR · slow sell-throughBundle · clearance · stop adsAOV
Metrics · revenue share · margin % · CR · sell-through · return rate80/20 review · monthly
Priority #4 · Visitors

Scale the sources that convert

SourceRoleActionOwner
DirectBrand demandProtect · CRM brings them backBrand · CRM
Paid SocialMain scale driverScale to tier A · B landingsAds
Organic SearchSteadyCollection SEOSEO
Organic SocialAwarenessDrive to web, not discountSocial
Paid SearchOften leaks budgetCut to brand terms · testAds
Direct + Paid Social ≈ 70% of purchasesPaid Search: high traffic share, low order share

* Insight from a multi-brand fashion retailer in VN. Detailed data not shared. Validate with Routine GA4 in month 1.

04

Control

Across all levers

Web P&L

LineLever / controlMy control
+ RevenueVisitors × CR × Frequency × AOVLead
· DiscountGuardrail (inside AOV)Control
− Marketing (web)Landing mix · owned vs paidControl
− ReturnsSize guide · product infoInfluence
− ShippingFree-ship tierInfluence
− COGSProduct · FinanceReport only
= Contribution marginNorth Star★

Cost ↓ by priority

#Cost ↓HowTeam
1Discount %Guardrail · segment codesMarketing · CRM
2Return rateSize guide · product infoContent · Sale Online
3Mkt cost / orderOwned traffic (CRM · Zalo) over adsCRM · Ads
4Ops cost / orderFree-ship tier · fewer cancelsWarehouse · Sale Online

Reporting to manager

Daily4-lever dashboardWeekly1-page updateMonthlyP&L review · post-mortem

Alerts · act when

AlertThresholdFirst action
CR−15% WoWCheck funnel by device · checkout errors
Margin after promoBelow guardrailCut promo depth · pause stacking
Revenue vs forecast< 90% for 3 daysCheck traffic · stock of top sellers
Return rateSKU above category avgFix size guide · product info
Commitment

Revenue ↑

Cost ↓

Margin ↑

Grow web revenue with margin protected, not bought with discounts.

05

Roadmap

By JD scope · ranked · 3 · 6 · 12 months

Roadmap

Priority · JD scope0–3 months · Learn & fix4–6 months · Optimize7–12 months · Scale
#1 · II. Track & optimizeDaily revenue GA4 + OMS · funnel auditSize guide · reviews · checkout UX with ITRecs
#2 · I. Sales programsPromo calendar + margin guardrailCampaign post-mortemMore full-price campaigns
#3 · IV. Cross-teamCRM: cart & post-purchaseCRM: browse · win-back · upsellLoyalty (points · early access)
#4 · III. MerchandiseCategory & product tiersTrend combosTraffic to tier A · B
Target
set after baseline
Revenue +10–15%Full-price share ↑Revenue +30–50% YoY
1 must-do per cellCheap levers first
Appendix

Detail on request

Web in a fashion omnichannel
ChannelRolePrice & offer ruleKPI
WebsiteFull collection · new drops first · member perksSame list price · web-only bundlesMargin · CR
Shopee · LazadaReach · mega-sale daysNo undercut vs web · platform-funded vouchersGMV · ad cost
StoresTry on · returns · serviceTry in store · check stock onlineO2O orders
Social · ZaloDiscovery · communityDrive to web, not discountVisitors to web
Web = margin + customer dataMobile-first checkoutTry-in-store bridges online · offline
Velocity-based forecast · stock for CR and AOV
YoY index = L30D ÷ same 30D LY→Forecast = next 3M LY × index→± promos · stockouts · launches→vs stock → action
Illustrative units
CategoryMoMYoY indexNext 3M LYForecastStockAction
Shirts+8%1.203,6004,3203,000Reorder
Denim−5%0.903,0002,7003,400Bundle · promo
Polo+12%1.252,0002,5002,600Hold
This monthLast monthLast yearAlways compare 3 points
Give and get · cross-team
TeamLeverGetGive
Ads · SEO · SocialVisitorsRight landing trafficCR by landing
IT · ContentCRSize guide, reviews, checkout fixesTest backlog · results
CRMFrequencyCart, repeat flowsBehavior segments
Marketing · ProductAOVBundles · schemeMargin by mechanic
Warehouse · Sale OnlineCRStock ready · returns handled3-month forecast · return reasons / SKU