Where the numbers come from, how Borsello decides who stands on the podium, and what you can win. No black box: every formula is on this page.
๐๏ธ
Daily sales, orders and sessions, read-only. With read_reports they come from ShopifyQL โ the same numbers as your Shopify Analytics โ and go back to the first year the store sold, so prestige counts its whole history; otherwise from your orders, which stop at 60 days. The conversion rate is Shopify's own: sessions that completed checkout รท sessions.
๐ฃ
Daily ad spend from the ad account each store connects on the Stores page (ads_read). ROAS here is blended: all of the store's sales รท all of its Meta spend.
๐งฎ
The ROAS where ads stop paying for themselves: 1 รท what's left of a sale after product cost, shipping and fees. You set it once per store on the Stores page.
margin โ breakeven ROAS
The server syncs every store every 10 minutes (plus a Refresh button) and always re-reads the last three days, because refunds move yesterday's number. Each store counts days in its own time zone and keeps its own currency; the room shows totals in one currency at the day's ECB rates.
๐ One clock for the room. Selling in one market? The room's owner can put everyone on its clock โ say US Eastern for a crew selling in the US โ so every store's day starts and ends at the same moment. A store whose Shopify is set to another time zone (Rome, London, Los Angelesโฆ) is re-cut hour by hour to match, and so is its Meta spend. Room settings โ Clock.
ROAS = sales รท ad spend
Profit = sales รท breakeven ROAS โ ad spend
Net margin = profit รท sales
Ember Score = โ(profit ร net margin)
The score is the geometric mean of how much you made and how well you made it, so you need both. It works out to profit รท โsales; money is counted in US dollars in every room and multiplied by 10 so it reads like points. Lose money and the score goes negative.
| Store | Sales | Ad spend | ROAS | BE ROAS | Profit | Net margin | Ember Score |
|---|---|---|---|---|---|---|---|
| ๐ฅ Lunar Socks | $6,120 | $1,790 | 3.42 | 1.90 | $1,431 | 23.4% | 183 |
| ๐ฅ Bean Machine | $4,350 | $1,610 | 2.70 | 1.75 | $876 | 20.1% | 133 |
| ๐ฅ Glow Theory | $2,960 | $1,620 | 1.83 | 2.00 | โ$140 | โ4.7% | โ26 |
A sample day. Lunar Socks: $6,120 รท 1.90 โ $1,790 = $1,431 profit, a 23.4% net margin, โ(profit ร margin) ร 10 = 183 pts.
Ranking by ROAS รท breakeven alone lets a one-order day take the crown. Ranking by profit alone means the biggest store wins every single day. The square root sits in between: size counts, but with diminishing returns โ a store four times your size needs only half your margin to tie you.
One lucky order
$40 sales ยท ROAS 5.00 ยท BE 2.00
$12 profit ยท 30.0%
19 pts
A steady day
$3,000 sales ยท ROAS 2.60 ยท BE 2.00
$346 profit ยท 11.5%
63 pts
ROAS 5.00 against 2.60, and still 19 pts against 63 pts: one order on pocket-change ads proves nothing.
$500 of sales
$500 sales ยท ROAS 2.00 ยท BE 1.40
$107 profit ยท 21.4%
48 pts
$5,000 of sales
$5,000 sales ยท ROAS 2.00 ยท BE 1.40
$1,071 profit ยท 21.4%
152 pts
Same ROAS, same breakeven. Ten times the sales gives about three times the score (โ10 โ 3.2): 48 pts against 152 pts.
$1,000 at a fat margin
$1,000 sales ยท ROAS 5.00 ยท BE 2.00
$300 profit ยท 30.0%
95 pts
$4,000 at half the margin
$4,000 sales ยท ROAS 2.86 ยท BE 2.00
$600 profit ยท 15.0%
95 pts
A quarter of the sales at double the net margin: 95 pts against 95 pts. Dead heat โ beat that margin and the smaller store wins.
Ads that don't pay
$2,000 sales ยท ROAS 1.60 ยท BE 1.80
โ$139 profit ยท โ6.9%
โ31 pts
A steady day
$3,000 sales ยท ROAS 2.60 ยท BE 2.00
$346 profit ยท 11.5%
63 pts
ROAS 1.60 on a 1.80 breakeven loses money on every sale: โ31 pts and the BELOW BREAKEVEN sticker, whatever the place.
1st place
The best. The GOAT. Horns, goatee and shades โ looks down on everyone.
2nd place
So close. Almost. Cold sweat and a crooked smile.
3rd place
Bottom step of the podium: charred, on the spit, smoke rising. The Roast wall is all theirs.
4th and below
Off the podium and into the ashes: flat, charred, flies circling. Tomorrow is another day.
A room's owner can put prizes on the podium: daily, weekly (Monday to Sunday), monthly, or custom dates up to three months. Prizes for first, second and third are whatever the crew agrees on โ โwinner gets free pizzaโ works great.
Each round is ranked exactly like the podium, on the room's clock if it has one โ otherwise every store counts its own local days. The room shows who's leading the current round, when it ends, and who won the last one.
Results are recalculated from the daily numbers, so a refund that lands a day late moves a result the same way it moves the podium. Set them up from the room's โ๏ธ settings.
๐ Pizza Friday
WeeklyThis week ยท ends in 2d 6h
Real prizes from us are on the way too โ see what's coming โ
An hour after midnight on the room's clock, Borsello posts the day that just ended: the SHOPIGOAT with a compliment, the last one with a roast, who's on a streak and who just had their best day on file. A store whose sync is broken sits it out โ nobody gets roasted for missing numbers.
Unlock a prestige badge and every room you're in hears about it, with the badge and its points. Founding crew goes to everyone, so it stays quiet.
When a round of a challenge is over โ a day, a week, a month or your own dates โ its top three are posted with their prizes. No more arguing about who owes the pizza.
Members still pin their own roasts, at the whole room or at one store. The conversation lives in the Chill Room's chat; the wall is for what's worth keeping. The room's owner can take down any post, you can take down your own.
Borsello's posts keep only facts โ which store, how much, which badge โ sealed with the room's key, and the names are looked up each time someone reads them: a store whose owner hides its name shows up under its codename, on old posts too.
Switch between Today, 7 days and 30 days, or open the ๐ calendar for yesterday, this month, last month or any range of days up to a year. Presets are relative โ every store applies them to its own calendar, or to the room's clock when it has one โ and the chart compares your daily sales with the crew's average store.
Tick Hide my store's name when you put a store in a room โ or later from the room's settings โ and everyone else sees a codename like ๐ถ๏ธ Masked Falcon. Your numbers still count; only the name is hidden.
The codename is different in every room, so nobody can line rooms up to work out who's who. You always see your own store's real name.
Access is read-only and we never store customers or single orders. Privacy details โ
Hiding your name is what your room sees. Underneath, we don't see it either: your store's name, its full address and your logins are sealed with a key that belongs to your account before they reach our database. We never know which store is yours.
Showing the name is your call, and it happens only on the page your friends open. Room names, nicknames, roasts and prizes are sealed too, with a key for each room.
It all runs on one small server that costs us a few dollars a month. How the encryption works โ
Everyone's sales over everyone's spend, everyone's conversions over everyone's sessions: the money as it really adds up. A store doing ten times the volume weighs ten times as much โ true, but it means one big store can move the total on its own.
So every figure comes with a second one: each store against its own last week, and the middle of those changes โ the median. Every store counts once, whatever its size. A big store having a bad day can't drag it.
The report's headlines follow the typical store and how many stores moved the same way. โMeta's having a rough dayโ needs most stores down and the typical one down 10% or more. When the blend moves and the typical store doesn't, the report says so: a few big stores are pulling it.
CPMs in Italy aren't CPMs in the US. A store counts in its main market โ where most of its sales went over the last 30 days, from Shopify, or the country its owner picks on the Stores page โ and any country with three stores gets its own report.
The Benchmarks tab on the global board: the typical store's conversion, sales per order, ROAS, CPM, CTR and CPC over yesterday, 7 or 30 days โ for everyone, by country and by niche (the owner picks it on the Stores page). Signed in, you see your own stores against their peers; nobody else does.
Every figure on the report and the benchmarks needs at least three stores behind it, and a country or niche shows up only once it has three. Never a name, never a store's own number, and the switch that takes your store off the global board takes it off all of this too.
The global board covers every day since January 1st, 2026. Today's report โ Benchmarks โ
Lofi (chill), jazz (cozy), chill house (sunset) or techno (crazy) โ played by a little generative band in your browser, in a different style each song: dusty keys, rainy piano, bossa nova, deep house, acid, dub and more. Every song gets a new key, tempo, progression and title, so it never loops. Nothing is streamed and nothing is licensed.
Three painted scenes โ a valley, a lake, a country road โ where the sun and the moon are where they really are for your time zone, the moon in its real phase. Sunsets, blue hour, shooting stars, and the seasons: falling leaves, snow, blossom, fireflies. Or set your own picture: it stays on your device.
While a Chill Room is open we look at the room's stores about once a minute. A new order gets a cha-ching, fireworks and a line in the Sales list, which stays until you clear it โ your own sales get a jackpot sound, gold fireworks and โthat's youโ. It keeps listening with the tab in the background, so the cha-ching reaches you while you work in another tab, and desktop notifications are one switch away in its settings. Your friends see that an order landed โ how much it was worth stays with the store's owner, unless they switch on โshow my amountsโ for the room (Chill Room settings, or the room's settings page).
A small chat next to the screen, with who's online right now. Reply to a message, send one of Borsello's stickers, or a rocket, confetti or money rain that plays on everyone's screen. Messages are sealed with the room's key, like roasts and prizes, and a room keeps its latest few hundred.
Paste a YouTube link and the whole room watches it together, in sync: play, pause and skip for everyone, the chat beside it, the music hushed. The video streams from YouTube to each of you; the room keeps only which video and where it's at.
One tap blurs every store's and person's name for a screenshot. The flex card puts today's number on your painted view, every name blacked out, ready for your socials โ drawn in your browser, never uploaded.
The podium sits low on the left and the music in the middle, so the sky stays clear โ for the view, and for the planes that tow the sponsors' banners across it. Open it from any room with the ๐ button. Leave it to check your numbers and it keeps going in a small player at the bottom of the screen โ music, alerts and all โ until you close it there. Keys: space to play, N for the next song, C for the chat, H to hide the panels, F for full screen. Try the demo โ