Our team connects strictly via @arlox.io emails.
On July 9, a women's fashion brand founder messaged her Arlox team at 10:34 AM asking for a "24-hour sale today" — a 30% discount, same afternoon, to cover a mid-month revenue gap. The team said no. Not because the sale was a bad idea, but because a spontaneous same-day discount is a markdown, not an architecture. Sixteen days later, after three days of hype-building campaigns that withheld the offer details, a countdown timer in red in the navigation bar, sale creatives scheduled for exactly 12:00 AM, and a Day 3 urgency push dispatched at 3:50 AM, the brand hit ₹1L before 9:00 AM on Day 1, ₹3L by noon, and closed Day 3 at 4.6x ROAS. The difference between a sale that moves ₹8L in 72 hours and a sale that barely pays for its ad spend is almost entirely in what happens before the sale goes live.
On July 9, 2025, the founder of a women's fashion brand sent a message at 10:34 AM: "guys, can we do 24hrs sale."
When the media team asked what she was thinking, she said: "Like a major 30% discount. I want to cover up the lost sales. Can we not do it spontaneously? Like today?"
The answer was no.
Not because a sale was a bad idea. The brand was nine days into July, running below its ₹25L monthly target, and a revenue spike would genuinely have helped. The no wasn't a strategy debate — it was a diagnosis: a same-day discount announcement with no audience primed, no creative in rotation, and no website architecture in place would generate almost nothing. It would touch the existing customer base, burn margin, and move on. That's not a sale. That's a clearance.
"The best way to do it would be creating an awareness campaign and build up certain hype for it," came the reply. "We can aim to generate 5–6 lakh revenue within 24 hours. Ideally I won't suggest doing it today. Impact would be less and we're abruptly going to make changes in campaigns."
Sixteen days later, the brand's biggest sale in its history went live at midnight.
By 8:56 AM on Day 1, a message arrived in the team chat: "₹1 lakh crossed so far 🙌"
By noon, the account showed ₹3 lakh in revenue at ₹1.07 lakh ad spend.
The founder — who had been skeptical about ever exceeding ₹3L in a single day — was on a Zoom call watching orders come in every few seconds.
BRAND SNAPSHOT
Industry: Women's Fashion D2C
Category: Premium ethnic and contemporary sets, dresses, co-ords — Shopify-based
Geography: India (pan-India)
Stage: ₹17L → ₹30L/month; 72-hour sale as first structured promotional event
Services: Meta Ads (Scientific Media Buying), Sale Architecture, Creative Strategy, WhatsApp Automation, Website CRO

The Problem: A Mid-Month Gap and the Request for a Quick Fix
By July 9, the brand was tracking below its monthly revenue target. Two structural disruptions had cost real days: an industry-wide session drop and a Meta billing failure — credit card charges being processed but ads not actually spending — had paused delivery for nearly 48 hours during the critical July 16-18 window. The founder's response was logical: run a promotional event to accelerate the month's close, capture buyers who had been browsing without converting, and cover the revenue gap.
The problem wasn't the intent. It was the timing and the architecture.
A spontaneous discount announcement at 2 PM on a Tuesday reaches one audience: people who are already on the website or inside the brand's existing customer base. It doesn't pull new buyers off Instagram. It doesn't create urgency that didn't exist at 10 AM. It doesn't separate the buyer who was planning to purchase at full price from the buyer who was waiting for a sale event. It compresses margins without compressing the buying decision — because there's no countdown, no scarcity, no context that makes this window feel different from any other afternoon.
The team's recommendation: wait until after July 15 (Myntra's seasonal sale was running July 11-17, pulling D2C buyers toward marketplace behavior during that window), then build the architecture for a structured 72-hour promotional event designed to reach audiences who hadn't seen the brand at all — not just reactivate the ones who already had.
The founder agreed. The architecture work began.
Why a Spontaneous Sale and a Structured Sale Are Not the Same Product
The underlying logic that made the team say no to July 9 is worth making explicit, because almost every D2C founder has the same impulse at some point: when revenue is soft, a discount feels like a lever. It is a lever — but only if the infrastructure is already in place to make it one.
A spontaneous discount announcement does three things:
It reaches buyers who were already considering the brand and offers them a price they may or may not need
It trains the algorithm to find buyers who respond to discount signals — a shift that doesn't reverse immediately when the discount ends
It burns margin without the revenue concentration that makes a promotional event worth the margin cost
A structured promotional event does something categorically different: it creates a window. A buyer who has seen "something big is coming this Friday at midnight" for three days in their Instagram feed is not in the same decision state as a buyer who sees "30% off today only" on a random Tuesday afternoon. The first buyer has partially committed before the sale opens. The window — its start time, its end time, its reason for ending — is doing conversion work before the ads even launch.
This distinction is not theoretical. It showed up in the numbers.
The Architecture: Five Components That Made Day 1 Hit ₹3L by Noon
Component 1 — Pre-sale hype campaigns (3 days prior, July 22–24):
Two things happened simultaneously in the three days before midnight.
In the ad account, awareness campaigns went live at an additional ₹25K/day above the standard conversion spend. These campaigns ran to cold audiences — people who had never seen the brand — with no offer details in the creative. The message was not "40% off coming." It was: "Something is coming to Baasta this Friday. Stay close." The purpose was reach before the reason to act: a buyer who has encountered the brand three times in three days before a sale opens is not the same buyer as someone arriving at a discounted product page cold.
For existing audiences — Instagram followers, WhatsApp broadcast lists, email subscribers — hype messages went out morning and evening. Verbatim from the July 21 meeting action items: "Tease the sale; mention the go-live date but keep the actual offer details minimal."
This instruction matters. The instinct is to announce the offer immediately to generate anticipation — "40% off this Friday!" But a buyer who knows the exact discount before the sale opens has already made the decision (yes or no) without the urgency mechanism of a live countdown. Keeping the offer details back until midnight preserves the decision as an event rather than an advance choice. The buyer knows something is coming. They don't know what. That gap is what drives the midnight traffic spike.
Component 2 — Website architecture (configured for 12:00 AM go-live):
The website changes were scheduled to activate at exactly midnight on July 25. Every product in the catalogue had its price slashed at the product level — flat 40% off MRP, built into the product page itself, not as a coupon code applied at checkout. A buyer arriving from an ad would see the sale price on the product page. There was no friction at checkout to interrupt the decision.
Navigation bar: "BIGGEST SALE EVER | Flat40% off for 72hours only." Red text. Countdown timer in hours, minutes, and seconds. Not a banner that required scrolling. The first element every visitor saw.
COD was disabled for the sale period. Partial COD was activated for high-RTO pincode zones — buyers in flagged areas could pay a portion upfront, reducing return rates during a concentrated high-volume event. A 5% prepaid discount added incremental incentive for full upfront payment. Existing discount codes (SLAY10, Weekend15) were scheduled for deactivation before midnight.
Component 3 — Midnight launch:
Ads were scheduled for 12:00 AM. Not "running before midnight" — scheduled to activate at the exact moment the website went live.
The Instagram "Sale is Live" story was posted simultaneously. The brand owner was briefed to record a personal 10-15 second video — "Hey guys, finally Baasta's Biggest Sale is Live" — to go up the moment the sale opened. The team message at 9:13 PM on July 24: "Ads are scheduled for 12 midnight 🤞." The pre-sale build had been three days of anticipation. The launch needed to feel like a moment, not a gradual reveal.
Component 4 — Intra-sale scaling protocol:
The scaling rule was established before Day 1: if ROAS at noon exceeded 3.5x, extend the budget beyond the initial ₹50K/day allocation. This decision was made in advance, not in the moment. By 4:08 PM on Day 1, the confirmed figures were: ₹1.07L spent, ₹3L in revenue, pace to ₹5L+ by end of day. The pre-committed rule triggered. Day 1 ultimately consumed ₹1.7L — more than three times the planned daily allocation — chasing a 3.5x+ ROAS that the data had validated before any incremental spend decision was made.
Component 5 — Day 3 urgency escalation:
At 3:50 AM on Day 3 (July 27), the media team sent the brand the instruction: "Make sure to post urgency based stories on IG again today. That this is the last day of sale before our new drop comes in. Most pieces may never be restocked again."
This is a specific behavioral mechanism. Scarcity fear in fashion is not primarily about price — it's about availability. The 40% off price had been visible for two days. Buyers who had seen it and hadn't acted had already filtered out the price objection. What remained were buyers who wanted the product but hadn't committed. The Day 3 urgency message gave them a different reason to act: not "lower price" but "last chance at this specific item before the catalogue changes." That reframe is designed for the hesitant buyer who isn't price-sensitive — they're decision-sensitive.
Day 3 closed at 4.6x ROAS — the strongest ROAS of the three-day event.
The Midnight Complication: One Thing That Almost Went Wrong
At 1:25 AM on Day 1, Shruti messaged: "We should have turned off Weekend15 and SLAY10. How could we miss that. People used it in almost all orders."
SLAY10 and Weekend15 — existing Shopify discount codes — had been deactivated in Shopify's backend before midnight. But Razorpay Magic Checkout operates a separate offer configuration layer that isn't managed through Shopify's discount system. Both codes remained active on the Razorpay side, and buyers completing checkout through Magic Checkout were applying them on top of the 40% sale price — stacking a second discount on already-compressed margins.
The fix was quick: toggling Razorpay Magic Checkout off and back on cleared the cached offer configuration. By 1:50 AM, the codes were confirmed inactive. Total impact window: approximately 90 minutes.
The lesson was structural. Every checkout tool that sits between Shopify and the buyer maintains an independent configuration layer. "Disabled in Shopify" does not automatically propagate downstream. For any promotional event involving pricing changes, the pre-launch checklist must include a complete checkout test from a fresh browser — from ad click to payment confirmation — run at the actual price and offer state the sale will use. The error was caught early. On a higher-volume or longer-running sale, the same oversight could run undetected for hours.
The Post-Sale Reset: The Cost Nobody Includes in the ROI Calculation
At midnight on July 28, sale ads were paused, website prices reverted, and the countdown timer came down. The regular-price campaigns resumed.
Within 24 hours, conversion rate had dropped. Abandoned carts were up. ROAS on standard campaigns was soft.
The July 30 analysis: "There has been a drastic drop in our overall conversion rate post disabling the COD... it could take 7–10 days for Meta to learn the new behaviour looking at current trends."
The August 13 retrospective completed the diagnosis: "During the sale period, we attracted more price-sensitive customers, which led to a consistent drop in CPM. This has likely caused Meta to optimize toward a similar pool of users, and as a result, most of our pre-sale campaigns have been struggling."
This is the post-sale audience contamination dynamic. A 72-hour sale at 40% off selects, behaviorally and algorithmically, for buyers who respond to discount signals. Meta's model, trained on the concentrated burst of discount-period conversions, updates its audience targeting to find more buyers who behave like the ones who just converted. In the week after the sale, the algorithm found discount-intent audiences and served them regular-price ads. The mismatch between audience psychology and offer reality suppressed conversion rates for 7–10 days regardless of creative quality or media buying decisions.
Recovery required launching fresh top-of-funnel campaigns with explicit exclusions of all existing customers — resetting the signal pool to audiences who hadn't been selected through a discount-period filter. Old campaigns that had been trained on the sale-period audience model were paused and replaced entirely.
The post-sale reset is not a failure mode. It is a structural cost that every D2C brand planning a promotional event should budget for explicitly. A sale that generates 4.6x ROAS on Day 3 and then requires 7–10 days of recovery is still net-positive at the month level — but only if the recovery window is anticipated and planned for, not treated as a crisis that triggers reactive budget cuts and unnecessary campaign pauses.
The Results
₹1L crossed by 8:56 AM on Day 1 — the brand's first time reaching this milestone before noon
₹3L revenue by noon on Day 1 at ₹1.07L ad spend — a pace that projected ₹5L+ by end of day
Day 2: 3.9x ROAS — sale architecture holding into second day
Day 3: 4.6x ROAS — strongest ROAS of the event; urgency-driven last-day story content the primary driver
₹2.25L total budget across 5 days (2-day hype phase + 3-day sale phase)
Post-sale reset: 7–10 days for algorithm recalibration and return to regular-price conversion baseline
Core outcome: Brand's first structured promotional event — the model for all future sale architecture, with every component documented and executable
What Every D2C Fashion Brand Can Learn From This
A sale that isn't prepared three days in advance isn't a sale — it's a markdown. The performance difference between a spontaneous discount and a structured 72-hour event is almost entirely in the hype phase. A buyer who has been told "something big is coming" for three days arrives on sale night with a partially-committed decision. That buyer behaves differently from someone who stumbles onto a discounted product page cold. Hype-building is not marketing warmup — it is revenue architecture. The time investment in three days of teaser stories and awareness campaigns is what produces the ₹1L-before-9-AM result.
Withhold the offer details until midnight. The counterintuitive instruction — "tease the sale, but keep offer details minimal" — is what creates the urgency mechanism. A buyer who knows the exact discount before the sale opens has already made the decision without the countdown pressure. A buyer who knows something significant is coming but doesn't know the specifics arrives on sale night to discover and decide simultaneously. That mental state converts at a higher rate because the discount and the deadline land at the same moment.
Countdown timers are conversion mechanisms, not decoration. A red navigation bar counting down "72 hours | 54 hours | 12 hours" is not aesthetic. It is a real-time scarcity signal that activates every time a visitor loads the page. The buyer who visited and didn't purchase two hours ago sees two hours gone from the window. That visual shift creates urgency that a static "limited time offer" banner cannot replicate. For a promotional event, the visible countdown is a required functional element.
Budget scaling rules on a sale day must be set in advance, not made in real time. On Day 1 with strong early performance, the data is exciting and the temptation to keep scaling is intense. The professional practice is to pre-commit a decision rule before the sale starts: "If ROAS exceeds X at noon, extend budget by Y." This removes the real-time emotional decision — which is always made under conditions of high volume, incomplete data, and time pressure — and replaces it with a threshold established calmly before any money is on the line.
The post-sale audience reset is a structural cost, not a failure. Budget for 7–10 days of below-baseline ROAS after a major sale ends. Launch fresh top-of-funnel campaigns with existing customer exclusions immediately after the sale closes. Treat the recovery window as a scheduled operational phase, not an unexpected crisis. A sale that converts at 4.6x ROAS and then requires 10 days of recovery is financially net-positive. A sale that converts at 4.6x ROAS and then triggers panic budget cuts, reactive campaign pauses, and founder anxiety during recovery loses the gains in execution.
Test the full checkout stack from a clean browser the night before. "Disabled in Shopify" does not mean disabled in Razorpay Magic Checkout, GoKwik, Fastrr, or any other independent checkout layer. Every third-party checkout tool maintains its own offer configuration. The only reliable pre-launch check is a complete end-to-end test — from ad click to payment confirmation — at the actual price state and offer state the sale will run.
What Made This Harder Than Expected
The July 16-18 Meta billing failure compressed the hype-building timeline. A platform-wide Meta charge-processing issue halted ad delivery for nearly two days across multiple accounts the week before the sale. The brand's account spent ₹10K over two days instead of the projected ₹25K/day. This period — which should have been used to test and iterate pre-sale hype creative — was instead spent on billing troubleshooting, payment clearances, and the eventual migration to a credit line. The sale launched with less creative iteration in the hype phase than originally planned.
The Day 1 budget overrun was correct in outcome but created pressure in the moment. Planned spend for Day 1: ~₹50K. Actual spend for Day 1: ₹1.7L. The overrun was driven by a pre-committed decision rule (ROAS > 3.5x at noon → scale), but it consumed the majority of the 5-day budget in 24 hours. The founder messaged at 10:53 PM: "Guys we have spent 1.7 today. Total 2.2/out of the 2.5 budget. This is much more than what we planned." Managing that budget message in real time — while orders were still coming in and the algorithm was still performing — required clear communication about what the pre-committed rule had authorized and why the spend was justified.
The post-sale performance drop was longer than the usual 3–5 day reset. Most post-promotion stabilization takes 3–5 days. For this brand, the recovery extended to 7–10 days and required full campaign rebuilds. The deeper-than-expected audience contamination was attributed to the concentration of the sale — three days of heavily discounted purchases, full COD disabled, partial COD active — selecting for a particularly price-sensitive buyer profile that left a stronger signal in Meta's model than a longer, lower-intensity sale would have.
What the Brand Got Wrong Before Arlox — and What Was Learned
"I can run a sale today if I want to." A brand with a Shopify store and a Meta ad account can technically announce a discount and run an ad at any moment. But the technical capability and the revenue outcome are not connected. A spontaneous discount is a price signal with no audience context behind it. Sixteen days and three phases of architecture were what converted the same product, at the same discount, into a ₹3L-by-noon event rather than a modest Tuesday bump. The sale is not the discount. The sale is the architecture.
"Hype campaigns before a sale are a nice-to-have." The hype phase was the most counterintuitive instruction the brand received: spend additional money three days before the sale running ads that make no mention of the offer. No immediate return. No trackable conversion from those impressions. The ROI on the hype phase appears in the midnight conversion spike — buyers who had been seeing the brand for three days arrived at the sale with partial conviction already formed. That conviction is not quantifiable in a pre-sale ROAS report. It is quantifiable in a Day 1 performance that crossed ₹1L before 9 AM.
Want results like Basata?
Book a free strategy call and discover how we can help you hit your next revenue milestone.

Founder
Before
₹17 Lakh MRR
After
₹30 Lakh MRR
