Performance marketing agency · Hong Kong
The paid-media engine behind scaling DTC brands.
Orvalis Media plans, runs and scales Meta and Google advertising for direct-to-consumer brands and hospitality operators — with creative strategy, honest reporting and a fixed weekly operating rhythm.
No long contracts · No percentage-of-spend fees · Your ad accounts stay yours

What we do
Four disciplines, run as one operation.
Paid acquisition only works when the account, the creative and the offer are managed together. We handle all of it on a continuous basis — not as isolated projects.
Meta Ads management
Full ownership of the Meta account — structure, spend, creative rotation, scaling and kill decisions, pixel and Conversions API health.
Meta Ads in detailGoogle Ads & Shopping
Search, Shopping and Performance Max built on a clean Merchant Center feed — from keyword sculpting to disapproval resolution.
Google Ads in detailGrowth strategy
The layer above the ad accounts: offers, pricing, bundles, funnels, channel mix and launch planning with KPIs per phase.
Strategy in detailCreative studio
Hooks, angles, UGC briefs, statics and iteration matrices — because in 2026, creative is the targeting.
Creative in detailInside the accounts
This is the screen we live in.
Not a marketing graphic — the actual working views: Ads Manager, Google Ads, and the tracking health behind both. One client account, one 30-day window, four ways of looking at it.
| Campaign | Delivery | Budget | Purchases | Reach | Impressions | Cost per result | Amount spent | Purchase ROAS |
|---|---|---|---|---|---|---|---|---|
VEL · A+ Shopping — Hero serum Sales · Advantage+ Shopping | ActiveSales | $1,540/day | 3,485 | 1,388,214 | 3,609,412 | $12.02 | $41,900 | 4.40 |
VEL · Retargeting — Engaged 14d Sales · Manual · Custom audience | ActiveSales | $720/day | 2,843 | 186,442 | 1,742,108 | $7.67 | $21,800 | 6.90 |
VEL · Retention — Past buyers · new SKU Sales · Manual · Customer list | ActiveSales | $400/day | 1,876 | 94,318 | 812,540 | $6.45 | $12,100 | 8.20 |
VEL · Prospecting — Creative test lab Sales · Manual · Broad | ActiveSales | $620/day | 961 | 742,190 | 1,214,806 | $17.07 | $16,400 | 3.10 |
VEL · Prospecting — Founder story Sales · Manual · Broad | LearningSales | $260/day | 152 | 61,220 | 98,410 | $13.95 | $2,120 | 3.80 |
VEL · Prospecting — Clinical-proof angle Sales · Manual · Broad | Off — killed day 9Not delivering | — paused | 150 | 118,904 | 196,330 | $27.87 | $4,180 | 1.90 |
| Results from 6 campaigns | $3,540/day | 9,467 | 2,204,908 | 7,673,606 | $10.40 | $98,500 | 5.08 |
Meta Ads Manager — Velmora, month 9Six campaigns, one paused on day 9 for missing threshold. $98,500 Meta spend at 5.08x.
→ swipe the panel sideways to see every column
| Campaign | Status | Budget | Impr. | Clicks | CTR | Avg. CPC | Cost | Conv. | Cost / conv. | Conv. value / cost |
|---|---|---|---|---|---|---|---|---|---|---|
| Velmora — Search · Brand Search · Manual CPC | Eligible | $110/day | 48,210 | 6,842 | 14.19% | $0.45 | $3,100 | 691 | $4.49 | 11.80 |
| Velmora — Shopping · Core catalog Shopping · tROAS 500% | Eligible | $250/day | 1,284,610 | 18,504 | 1.44% | $0.40 | $7,400 | 853 | $8.68 | 6.10 |
| Velmora — Performance Max · All products Performance Max · tROAS 550% | Eligible | $235/day | 2,140,882 | 21,562 | 1.01% | $0.32 | $6,900 | 835 | $8.26 | 6.40 |
| Velmora — Search · Non-brand skincare Search · tCPA $11 | Limited by budget | $70/day | 96,440 | 2,470 | 2.56% | $0.85 | $2,100 | 194 | $10.82 | 4.90 |
| Total: account | $665/day | 3,570,142 | 49,378 | 1.38% | $0.39 | $19,500 | 2,573 | $7.58 | 6.98 |
Google Ads — Velmora, same 30-day window$19,500 across Brand, Shopping, PMax and a budget-limited non-brand test.
→ swipe the panel sideways to see every column
Events Manager — pixel & Conversions API healthDeduplication at 98.2% and a Purchase match quality of 8.7/10 — the reason the numbers above can be trusted.
→ swipe the panel sideways to see every column
Where the money actually went
Placement & audience breakdown — same month.
Budget is never “Meta” in the abstract. This is the delivery breakdown behind the $118,000: which surfaces paid, and which audience segment bought.
Top: spend by placement. Bottom: purchases by age band, Meta breakdown view.
Client account views reproduced with permission and anonymised at the client's request — account names and identifiers changed, figures unchanged and internally consistent across all four views. Past performance on one account is not a prediction of results on yours.
Selected work
Results we can walk you through.
Flagship engagements across skincare, outdoor gear, fine jewelry and hospitality — each one a different problem, all of them scaled on evidence.

Velmora
Nine months from $38k to $118k monthly spend — with efficiency improving on the way up.

Alturra Outdoor
A seasonal brand turned into a $1.6M-a-month machine before its biggest quarter.

Maison Lueur
Luxury positioning kept intact while paid social became the house's largest channel.
Reporting
You see what we see. Every week.
No mystery dashboards and no quarterly surprise decks. Every client gets a written weekly report built from the account's actual numbers — spend, revenue, what changed, what we are doing next — plus a strategy call every two weeks.
Decisions are recorded, so the account has a memory. When we scale, you know why. When we kill an ad, you know why.
| Campaign | Spend | ROAS | CPA | Purchases |
|---|---|---|---|---|
| Advantage+ Shopping — Core | $148,200 | 5.8x | $9.20 | 16,082 |
| Prospecting — Creative test matrix | $86,400 | 4.6x | $13.60 | 6,352 |
| Retargeting — Engaged 14d | $54,100 | 8.4x | $7.10 | 7,620 |
| Google — Brand + PMax | $61,800 | 6.1x | $10.40 | 5,942 |
| Blended | $350,500 | 5.9x | $9.70 | 35,996 |
The document itself
One page. Sent Friday. Including the bad weeks.
This is a real week from a live engagement — the week we killed one of our own campaigns after it spent $4,180 without proving itself, and the week we told the client their landing page, not their ads, was the problem.
Most agencies write reports that explain why everything is fine. Ours are written so you could hand them to an accountant.
See the full weekly rhythmWhat changed this week
- Scaled Retargeting — Engaged 14d from $560 to $720/day. Seventh straight day above target; re-read Wednesday.
- Killed Prospecting — Clinical-proof angle at $4,180 spent, 1.9x. It had three times break-even CPA to prove itself and didn't.
- Launched two new hooks on the winning body (Variant B routine). Both exited learning Friday.
- Fixed a Merchant Center disapproval on 14 SKUs — “missing GTIN”. Back to serving within 36 hours.
- Flagged: mobile page speed on the hero PDP is 4.1s. That's costing conversion rate, not impressions. Detail in the appendix.
What happens next week
- Step the Hero serum campaign to $1,780/day if Tuesday holds above 4.2x.
- Brief three gifting-angle creatives ahead of the September drop — queued before the budget moves, not after.
- Rebuild the non-brand Search campaign around the four terms that actually converted last month.
- Page-speed fixes on the hero PDP with your developer — we'll send the exact list.
The creative engine
In 2026, the creative is the targeting.
Meta finds the buyer on its own now. What you control is the ad that decides your price. So we run creative as a factory with a queue — never as a quarterly photoshoot.
Angle · Clinical proof
Angle · Expedition story
Angle · Gifting occasion
Angle · Direct bookingNinety-four tested. Sixteen survived.
Every creative enters with a budget and a threshold agreed before it launches. Most die. The ones that live get new hooks, new formats and new lengths built on top of them — and they get promoted into the campaigns that carry real spend.
One angle, four variants — the test that produced the winner above
Variant A · Founder
Variant B · Routine
Variant C · Clinical
Variant D · ComparisonHow we decide
Four verdicts. Nothing in between.
Every campaign in every account we run sits in exactly one of these states at any moment — and the rule that moves it was written down before it launched, not argued about afterwards.
It earns more budget
The structure has held target for seven consecutive days with creative already queued behind it. Budget steps up — never more than 30% at a time.
It stays exactly as it is
Delivering, near target, still inside its learning window. The hardest discipline in media buying is leaving a working campaign alone.
The account is not the problem
Traffic is fine, the page isn't. We stop buying harder and go after the offer, the landing page or the feed instead.
It dies, even if we built it
Spent its full test budget and missed the threshold agreed in writing before launch. No defending, no “one more day”.
Efficiency
Scale that improves the account.
Anyone can buy revenue by spending more. The test of a media buyer is whether the cost of a customer falls while the budget rises — here is what that looks like across nine months on a live account.
Partnerships & platforms
Recognised where we operate.
We hold partner status on the platforms that carry client budget, and work daily inside the tools around them.
Where we work
Eight categories we know cold.
We don't take every account. These are the economics we have already solved — which means we start from a playbook instead of from zero.
Hospitality & villas
Direct reservations instead of platform commissions — the guest and the margin stay yours.
Best result: +214% direct bookingsSkincare & beauty
Repeat-purchase categories where retention compounds every dollar paid media brings in.
Best result: 5.4x at $118k/moOutdoor & gear
Seasonal brands where the whole year is decided in one quarter and the ramp has to happen early.
Best result: $1.62M monthFine jewelry & luxury
Volume without discounting — occasion-led creative that protects the price architecture.
Best result: 6.1x, zero promosHome & living
High-consideration purchases where the retargeting window is measured in weeks, not days.
AOV-led bundle architectureFashion & apparel
Creative-hungry categories that need a testing engine, not a quarterly photoshoot.
Weekly creative matrixPet wellness
Subscription-first offers built around one hero SKU instead of a scattered catalogue.
41% of new buyers on auto-shipDigital products
Zero-COGS economics where the only real constraint is creative supply and funnel maths.
Front-end + upsell funnelsThe honest comparison
Three ways to buy media. Only one of them is ours.
You have three real options, and we lose plenty of deals to the other two. Here is the comparison we would want to read if we were on your side of the table.
| Orvalis Media | Typical agency | Hiring in-house | |
|---|---|---|---|
| Who touches your account | The senior buyer who sold you the engagement | A junior, after the pitch team disappears | One person, learning on your budget |
| Fee model | Fixed monthly retainer — our incentive is your profit | % of ad spend — their incentive is your budget | Salary, tax, tools, holiday, ramp-up |
| Reporting | One written page every week, whether it was a good week or not | A dashboard link and a quarterly deck | Whatever gets written between fires |
| Kill discipline | Thresholds agreed in writing before launch, enforced the same day | Losing campaigns defended because they built them | Emotional — it was their idea |
| Creative supply | Queued ahead of every scaling step, never behind it | Refreshed when performance already dropped | Bottlenecked on one person's calendar |
| Account ownership | Yours. Always. Structure and learnings stay if we part | Often theirs, rented back to you | Yours |
| Commitment | Month to month, 30 days' notice | 6–12 month lock-in | Employment contract |
| Cost of being wrong | 30 days | The rest of the contract | A hire, a notice period, a rebuild |
Onboarding
Live in three weeks, scaling from week four.
A fixed sequence with approval gates. You always know which week you're in and what happens next.
Discovery call
30 minutes on your brand, numbers and goals.
Audit & access
Week 1 — accounts, tracking, funnel, unit economics.
Strategy & creative
Week 2 — structure, angles and a testing plan you approve.
Launch
Week 3 — campaigns live with clear judgement thresholds.
Scale & report
Week 4+ — weekly rhythm: test, scale, kill, report.
Who you actually work with
A compact senior team. No juniors on your budget.
We keep the roster deliberately small so the person who wins your account is the person who runs it.
Account leads
Senior buyers who own accounts end to end. The person on your discovery call is the person in your Ads Manager — no hand-off to a B-team.
Angle & hook direction
Briefs the testing matrix every week: what angle, what hook, what format, and what proof it has to beat to survive.
Tracking & measurement
Pixel, Conversions API, GA4, feed health and break-even modelling — so the numbers we scale on are the numbers your bank sees.
Reporting & rhythm
Keeps the weekly report, the decision log and the calendar honest. Every change to your account is written down with a reason.
Client voices
What working with us is like.
Six clients, four industries, one thing in common: they all read a weekly report that occasionally tells them bad news.
We went from $38k to $118k a month in spend and our blended ROAS went up, not down. I still read the weekly report twice because I don't quite believe it.
They planned our scale around the season instead of panicking inside it. We did $1.62M in a month with margins we'd never held at half that spend.
Within a quarter, social went from a brochure to a booking channel. Direct reservations tripled and our reliance on OTA listings dropped sharply.
Everyone told us luxury can't scale on Meta without discounting. Six months later we're at 6.1x with our price architecture untouched.
What sold me was the kill discipline. They cut their own campaign on day nine when the data said so — most agencies defend everything they launch.
Onboarding was a week: access, audit, plan. By week three we were live with a structure that finally made sense to look at.
Before you book
The questions we get every week.
Straight answers, including the ones that lose us business.
What does the retainer cost?
Are the screenshots on this page real client accounts?
Do you guarantee results?
How fast until we see results?
What size of brand do you work with?
Next step
Tell us what you are trying to scale.
A short note about your brand, your market and your current monthly ad spend is enough. We reply within one business day — by email only.