ChatGPT Ads is now available
You can connect a ChatGPT Ads account on the Integrations page.

Every new feature, improvement and fix in Margyn. We ship continuously — here’s what changed.
You can connect a ChatGPT Ads account on the Integrations page.

The dashboard chart only ever drew 7 days or 4 weeks, whatever range you picked above it. Switch it on in chart settings and it follows your range from then on, grouping into weeks or months once daily points stop fitting.

In August we said this line matched the rest of your dashboard. It did not: it skipped operating expenses entirely, so it read high. It subtracts them now, and if you record any, the line steps down.
Opening the detail chart behind Units sold or Fee products drew a line pinned at zero across the whole period, with a Normal Zone band around it as though it were real data. Both come from your actual figures now, Units sold matches the card above it, and a metric with no time series says so instead of drawing a zero.
If your store runs on the FIFO stock system, you can now enter a delivery on the product itself — how many pieces, what each one cost, when it arrived — without raising a purchase order for it, and your sales are costed from those deliveries, oldest first. Enter one after the fact and the orders since it arrived are costed again; remove it and they follow.
If your store runs on UNAS, every discount used to count as a sold unit, the Discounts figure sat at zero, and a product could drop out of your product numbers entirely just because its name happened to contain the word "fee". Units sold now counts real products only, every discount shows up under Discounts, and those products are back — earlier months included.
The margin figures on the discount code page left out VAT and four flat costs, and divided by the gross price, so they read higher than what you actually kept. They use the same contribution margin as the rest of Margyn now, so most past periods you reopen show lower, and correct, numbers.
Saving a rate only affected orders that arrived afterwards, so past profit never moved and the commission row stayed hidden on your profit and loss. Saving now restates orders back to the date you choose, and the settings screen stops reverting to Not set a moment after you save.
The nightly recalculation and the live import costed the same order two different ways, so an order could change cost overnight without anything about the order changing. Both use one calculation now.
If you advertise on TikTok, that spend was already in your total and your profit but had nowhere to show up, so the platform breakdown added up to less than the total above it. It has its own card now and the ad spend chart counts it, and nothing changes if you do not run TikTok ads.
The peaks tab listed every product a busy window touches, most of which your reorder list already buys all year round. It now leads with the ones that sold nothing at all in the last 90 days, ordered by the date you have to place the order, each saying what it sold last time against what it normally sells.
Record a delivery on a purchase order and the received quantities go into your Shopify store on their own — until now you typed them in twice. It needs one new permission, so the receiving screen offers a reconnect the first time; nothing is sent to your store until you grant it.
The new Demand planning area shows every product that still sells and how many units its own history supports for each month ahead — and says so plainly where that history is too thin to forecast, rather than showing a number it cannot stand behind. Set a revenue target for the year and it tells you what stock that would need, and how much cash it ties up.
Margyn reads your own sales history and finds the weeks that genuinely spiked — not the ones the calendar assumes. It shows which products carried them, and the last day you can still order for each one.
Ask why revenue dropped on the 12th and the assistant now reads the note you left on the chart that day, instead of blaming whichever metric moved most. It can write a note for you too, but only what you have confirmed — reading works on the connection you already have, writing needs a new permission, so remove and re-add Margyn once to switch it on.
Your daily, weekly and monthly report emails now carry a chart of the last 7 days: gross revenue bars with your net margin % across them, the same one your dashboard shows. Report settings let you stretch it to 28 days, chart a different figure, or leave it out.
If two of your stores sell from the same stock, Margyn can now treat them as one warehouse while keeping their reports separate. A sale in either store draws from the same pile at the right cost, and a delivery is recorded once.
Receiving a purchase order was a job you did twice, once here for the costs and once in your store so you could actually sell the goods. Margyn now writes the received quantity into UNAS for you, and asks which size or colour arrived if your store keeps stock that way. We do not write to Shopify stores.
On the receive screen you can now select lines and accept or reject them together, or clear their quantities in one go — each line takes its own outstanding amount. Useful when everything on a twenty-line order turned up exactly as ordered.
A purchase order placed in euros is converted before its cost is recorded, and the receive screen now names the source and the day it applies to. Hungarian bookkeeping expects one publisher throughout, so we can set your store to the MNB fixing instead of the ECB one — ask us, and every receipt from then on uses it.
The per-unit share of shipping and duties was rounded before it reached the unit price, so the stored cost came out slightly off, and slightly different from the figure the receive screen had just shown you. Both come from the same unrounded number now, and deliveries already recorded are unchanged.
Quantities Margyn sent into UNAS were logged as "PO-PO-2-…", with the prefix twice. They now carry the batch number exactly as it reads here, so you can match a line in your own stock log back to the delivery it came from.
Anyone who subscribes on your recommendation earns you 40% of every payment they make, for 12 months. The details are at the bottom of the page.
The fatigue badge told you which creative was slipping, then left you scrolling to find it. There is now a Fatigue filter on the ads page — pick Fatigued, Watch or Stopped and the list shows only those. It filters the ads you have loaded, so load more to widen the search.
The spend slider opened on odd figures like 475 Ft that had nothing to do with your account, and started higher than most people want to set it. It now runs from zero to a round number drawn from your own spend, in your own currency, on both the ads and the Performance Max quadrant.
In Cost Settings, searching for something you do not sell brought up the "Connect an integration first" screen, as though Margyn had lost your products, and took the search box away with it. A search with no matches now says there are no matches, and leaves your search where you put it.
On the 4-week view the marker never appeared, so notes were impossible to find. It now shows on every range, and it is easier to see.
The marketing site always offered "Log in", even to people already signed in. It now shows "Dashboard" instead.
If something briefly failed while your dashboard was loading, you were treated as signed out and sent to sign-up — which sent you back, over and over, until the browser gave up. A brief failure now shows a retry instead.
If an order was changed after it was placed, the removed product stayed in your product sales and units sold — and a product ordered twice in two sizes was counted once. Both are fixed, and your revenue was never affected.
The same month could show a different return rate on the card, the chart and the chart total — three formulas for one number. Everything now measures the same thing: the value of goods returned against the value of goods sold. A single-day view also reported 0% no matter what came back, because refunds were not being loaded for it at all.
On UNAS a refund is stored as a negative order, so the targets page averaged it in as if it were a sale — that pulled your average order value below what you actually took. Your average order and cost breakdown now match the dashboard, and the money lost to refunds is still charged against margin, so the suggested targets stay on the cautious side.
On Shopify stores only part of a refund was coming off — the VAT portion was added back, so an order you refunded in full still counted as sales. Total Sales now drops by the whole amount the customer got back. UNAS stores were already right and do not change.
Editing the default COGS margin used to recalculate every order you had ever taken, so a correction made today could quietly move last quarter's profit. You now pick the date it applies from, today by default, and earlier orders keep the cost they already have unless you deliberately restate them.
UNAS records a refund as a negative order, so refunds were coming off your returning-customer figures — even when the original purchase was someone's first. Returning-customer revenue, average order value and the new-versus-returning split now read the same way on every platform, and Revenue divided by Orders gives you AOV exactly. Shopify stores were not affected.
On UNAS this card was already netting off refunded VAT, which made it identical to Net Taxes. It now shows tax collected before refunds, so the pair reads as intended — Sales Taxes before, Net Taxes after.
With Previous period selected, changing the date range left the comparison on the old window, so a 7-day view could end up measured against 14 days while the cards still read vs Previous period. It now re-anchors the moment the range changes, however you change it.
The row used to show seven ticks and crosses. It now names what is actually leaking and what it is costing you over the period, biggest first — so you can see that shipping took 232 000 rather than that shipping has a red mark. When nothing is leaking it says so in one line.

Finding where to subscribe meant hunting through Settings. There is now a card at the bottom of the sidebar with the days left in your trial and a button straight to checkout, and on your phone a countdown chip in the header that goes to the same place.
If your orders had no product costs on them yet, this page showed a red error and an English sentence about COGS, whichever language you use. It now names what is actually missing — product costs, or orders at all — and when it is costs, takes you to Cost Settings to add them. A setup step, not a failure.
In the chart settings, "Show the 7-day trend" was greyed out unless you switched to 4 weeks, even though the chart already reads the week before whatever range you are on. Turn it on and the 7-day view draws the same line, and a quiet Sunday no longer blocks it — a day with no sales simply carries no weight.
In the PMax search term pattern view, accented letters were being dropped — "őszi kabát" showed up as "szi kabt". The words now appear exactly as they were searched.
Looking at the whole of May, "previous period" came out as Mar 31 – Apr 30 instead of April. That and two similar errors are fixed, so your percentages now compare equal-length windows that do not overlap. Every option shows its exact dates before you pick it.
Signing in on a second computer could show the app in English even though you had chosen Hungarian — your emails stayed Hungarian, which made it stranger still. The language you pick is now saved to your account and applies everywhere you sign in.
Both sit at the top of the dashboard and decide every number on the page, but only one of them was labelled and the other was easy to miss entirely. They are a matching pair now, each with a caption, and choosing one opens a short menu split into windows that scale with the period you are viewing and fixed calendar windows that do not.
If you put several images or videos into one ad as Advantage+ creative, what used to be called dynamic creative, the ads page could only show you the ad as a whole. Open a card now and each piece of media carries its own spend and results — bearing in mind Meta backs whichever it expects to win, so the biggest spender often shows a worse cost per result.

Whether an ad is flagged for a refresh now rests on whether its results are actually slipping — click-through rate, cost per purchase, hook rate — with how often it has been seen shown alongside as context. That suits catalog and retargeting ads in particular: they work a deliberately narrow audience, so they reach a high view count while still selling well.
Older ads used to lose their pictures and turn into grey boxes. The images came from Meta links that stop working after a while, and once one went, it was gone. We keep our own copy now, so they stay. Ads that had already gone blank have their picture back.
An ad that stopped delivering carried no badge at all on the ads page, which read as "nothing to see here". It now says Stopped. It does not guess why — a pause, another ad taking the budget, or an unpaid invoice all look identical in the data — it just tells you it is no longer running, so you can go and look.
If you have set a margin target, the line on your dashboard chart now runs red wherever you are under it, and stays its normal colour where you are over. Point at any day and you get the target alongside the value, and how far off you were in percentage points.

Daily margin moves with the day of the week — most stores earn less at the weekend than midweek — which had the line crossing your target every few days without anything actually changing. Switch on the 7-day trend in chart settings and a bold average runs over the faint daily line, so you read the direction instead of the calendar.

The 7 days / 4 weeks switch has moved behind a gear next to the chart, together with the new target and trend options. Everything that changes what the chart shows now lives in one place, and your metric cards get the width back.
Picking what your dashboard chart shows used to mean recognising twenty-one metric names on sight — and knowing which of them counts tax, refunds or ad spend. Each one now carries a small info marker: point at it and you get what the metric measures and the exact formula behind it, without leaving the chart to go look it up.
Your main chart can now show four weeks instead of a single week, so a couple of quiet days stop looking like a trend. Four weeks is exactly four Mondays, four Saturdays and so on — the same mix as the four weeks before it — which means a change you see is a real change, not the calendar.
Two of the four chart colours were nearly identical to anyone with red-green colour blindness — roughly one in twelve men. All four are now clearly distinct, in both light and dark mode, and still on brand.
The net profit line on the chart was calculated differently from the same figure elsewhere in Margyn, and came out higher. Both now use one calculation, so the number is the same wherever you look at it.
When a Meta ad account stops for a payment issue, we now mark it on your dashboard chart — and mark it again when it comes back. Weeks later you can still see exactly why that dip is there, and everyone on the team reads it in their own language.
We alerted you when an ad account stopped, but the all-clear email was never sent — you got the alarm and then silence. It goes out now, with how long the account was down.
A creative that used to sell gets more expensive as the same people keep seeing it, and the change is gradual enough to miss. The ads page now flags them on a rising cost per result and a climbing frequency, so you can refresh or pause one before it eats the budget.
Over longer date ranges both figures drifted away from what Ads Manager shows. They match again.
If a Meta ad account is paused or disabled we email you within about fifteen minutes, and once more when it comes back. No more finding out days later that the spend stopped.
The figure was contribution margin from before ad spend, despite what the column was called. Ad spend comes off it now, the pre-ad figure keeps a column of its own, and each number says whether it is pixel-verified or UTM-based.
The pixel went out inactive, and as plain text rather than script, so it never ran at all and the attribution behind your orders was empty. Two fixes later, it records visits.
Every order now shows the path the customer took, on Shopify and UNAS alike, with the profit beside it. Switch the attribution model to see how the credit is shared out.
Claude could already read your figures. It now works through the questions that need analysis: which months repeat, what looks out of place, what cash on delivery actually costs you, and which products are about to run out.
The overview puts e-commerce stores and lead-gen accounts in separate tables, each with its own profit column. One list was measuring two different things.
Type a brand and you get the Meta ads they are running now, broken down by placement, partnership and creative angle, as a report you can share.
If you collect leads rather than orders, the cards, columns and charts now carry leads and cost per lead throughout, instead of sales figures that never applied to you.
A renamed or new shipping method is matched by its name or by its carrier, and the settings screen suggests a profile for anything it cannot place. Orders still missing a shipping cost are badged, so your margin does not drift quietly while methods change.
Break a profit and loss line into volume, mix and rate, check whether a sync is healthy, or compare customer cohorts, without leaving the conversation.
FIFO product costs now run on UNAS stores and no longer swap the Hungarian net and gross price, so the margin on each order is right.
It turns your ad spend, your margins and the delay before payments settle into month-by-month cash in the bank. You can save a scenario and share it.