# MarginOS > Profitability OS for DTC Shopify brands MarginOS is a profitability operating system for $2–20M Shopify DTC brands. It unifies Shopify, ad platforms, and cost data into a live Profit & Inventory Command Center that shows true SKU × channel contribution margin so operators can cut leaks and scale winners. ## Sitemaps - [XML Sitemap](https://marginos.com/wp-sitemap.xml): All public, indexable URLs for this site. ## Documentation ### Getting Started - [Set up MarginOS: the 3-step Express Setup](https://marginos.com/docs/getting-started/express-setup/): Express Setup is the three-step wizard that takes a new MarginOS account from empty to a working profit view: Brand Profile → Connection → Defaults . It is the fastest path to a first real number, and each step exists because MarginOS refuses to guess about something it can simply ask you. Before you start Express Setup requires admin privileges. If you were invited as a non-admin you will see an access notice instead — ask an admin to run it. Have your Shopify store to hand, and a rough sense of your product costs. Neither has to be exact yet. You can leave and come back. Progress is saved as you go, and returning from Shopify drops you back ### Features - [Read the Command Center](https://marginos.com/docs/features/command-center/): The Command Center is where MarginOS puts the answer to "how is the business actually doing." It is the landing screen, and it is organised so the top of the page tells you the state of the business and the bottom tells you what to do about it. What is on the page Section What it answers DTC Performance Snapshot Orders, profit, profit per order, margin and return rate for the period — the headline read. DTC Customer Economics What a customer is worth against what they cost to acquire. Business Lines DTC Gross Profit alongside Wholesale, Marketplace and Retail / Other revenue, so one channel class never hides another. Cash & Inventory Health Cash Conversion Days, Slow / Dead - [Read the Growth Engine](https://marginos.com/docs/features/growth-engine/): The Growth Engine answers one question: which channels deserve more money, and which are quietly costing you? It is the screen where acquisition spend meets real profit, so a channel that looks strong in an ad platform can be shown for what it actually returned. How the screen is organised The default view is Channels , and it is the one that matters most. The Google, Meta and Microsoft tabs are zoom-ins on a single platform's campaigns; they do not replace the channel view, they drill into part of it. Every view on the page uses your Shopify direct-to-consumer orders as the source of truth — not what the ad platforms report. That single decision is why the numbers here ### How It Works - [The Defensible Profit Model: how MarginOS grades cost accuracy](https://marginos.com/docs/how-it-works/defensible-profit-model/): The Defensible Profit Model is how MarginOS makes a margin number you can act on: every cost behind it is graded by the strength of the evidence supporting it, and that grade travels with the number. A cost taken from a supplier document is treated differently from one you typed in, which is treated differently again from one MarginOS had to model. And when a cost genuinely cannot be established, MarginOS reports it as unknown rather than quietly calling it zero — because a zero cost turns an unprofitable product into a star. What is the Defensible Profit Model? The Defensible Profit Model is MarginOS's approach to cost accuracy: every cost behind a margin is graded by the class of - [How MarginOS calculates Gross Profit (CM1)](https://marginos.com/docs/how-it-works/contribution-margin/): MarginOS calculates Gross Profit — also called Contribution Margin 1, or CM1 — as your net revenue plus the shipping your customer paid, minus every variable cost of delivering that order: COGS, fulfillment, payment gateway fees and refund fees. It is computed on each individual order and then rolled up to the SKU, channel and window you are looking at, so every screen in MarginOS shows the same number. CM1 is your profit before marketing spend, which is what makes it the honest starting point for every other metric in the product. What is Contribution Margin 1 (CM1)? Contribution Margin 1 (CM1) is net revenue plus shipping revenue, minus all variable delivery costs for an order — COGS, fulfillment, payment - [Data Trust levels: how MarginOS grades margin reliability](https://marginos.com/docs/how-it-works/data-trust/): Data Trust is the grade MarginOS puts next to every SKU's margin to tell you how much of that number is backed by real evidence. It has three levels — HIGH , MED and LOW — and it answers a question most profitability tools never ask: not "what is my margin," but "how much should I believe this margin before I act on it." A SKU whose costs all came from documents is graded differently from one propped up by a store-wide average, and MarginOS shows you which is which. What is Data Trust? Data Trust is a per-SKU reliability grade that reflects how much of that SKU's margin rests on measured evidence rather than approximation. It appears as a - [How MarginOS calculates LTGP](https://marginos.com/docs/how-it-works/ltgp/): MarginOS calculates LTGP — Lifetime Gross Profit — as the average contribution profit a customer generates in their first 90 days. It is built by taking every order that customer placed in that window, computing the real Gross Profit on each one, adding them up, and then averaging that total across your customers. The window is measured from each customer's own first order, not from a date on the calendar, and the profit is after returns. LTGP is what you earn from a customer, which is why it — not revenue — is the honest thing to compare acquisition cost against. What is LTGP? LTGP is the average profit, not revenue, that a customer contributes within a fixed window after - [How MarginOS calculates CAC Payback](https://marginos.com/docs/how-it-works/cac-payback/): MarginOS reports CAC payback as a share, not a duration : of the customers you acquired inside your own payback target window, what percentage earned back their acquisition cost within that window. A customer repays when their cumulative Gross Profit — summed across every order they have placed, after returns — reaches your blended CAC. The median number of days it took the customers who did repay is reported underneath as a speed companion, because on its own it is a flattering number that ignores everyone who never got there. What CAC payback measures CAC payback is how long it takes a customer to earn back what you paid to acquire them, and it is the cash-flow constraint on how - [How MarginOS resolves blended CAC](https://marginos.com/docs/how-it-works/blended-cac/): MarginOS resolves your blended CAC from what you actually spent: total paid ad spend in the window, divided by the new customers those paid channels acquired in that same window. Organic customers are excluded from both halves. When MarginOS cannot compute that honestly — because your ad history does not reach back far enough, or because paid spend bought nobody — it falls back to the CAC you set yourself, and failing that it shows N/A . It never substitutes an industry average or a default constant, because every CAC-dependent number you look at afterwards would inherit that invention. What is blended CAC? Blended CAC is the average cost of acquiring one new customer across all your paid channels combined, - [How MarginOS calculates channel LTGP:CAC](https://marginos.com/docs/how-it-works/ltgp-cac/): Channel LTGP:CAC answers one question: for every $1 you spend acquiring a customer through a channel, how many dollars of gross profit do that channel's customers actually generate in their first 90 days? A channel at 2.4 returns $2.40 of profit per $1 of acquisition cost within 90 days. MarginOS computes it per channel from your real orders — not from an average order value multiplied by an assumed margin. What MarginOS calls this on screen In the Growth Engine's channel table the column is labelled "90‑day profit : CAC" , not "LTGP:CAC". The label is deliberately plain-language; the number behind it is the LTGP:CAC ratio. Both names refer to the same calculation on the same orders. For what counts - [How MarginOS assigns each order to a channel (attribution)](https://marginos.com/docs/how-it-works/attribution/): Every direct-to-consumer order in MarginOS is credited to exactly one acquisition channel, and every customer is credited to the channel that won their first-ever order . That single assignment is what makes channel profit, CAC and payback add up instead of double-counting people who touched three channels before buying. When MarginOS cannot see how a customer found you, it says so — those orders go to Unknown / Blended rather than being quietly folded into Organic/Direct. The rule, in one paragraph When a customer touches several channels before their first order, MarginOS credits one of them, in this order of preference: a channel you mapped yourself, then a clear paid ad click, then the last non-direct visit before the order, - [Why MarginOS shows “N/A” instead of a made-up number](https://marginos.com/docs/how-it-works/no-invented-numbers/): When MarginOS cannot compute a number honestly, it shows N/A — not a default, not an industry average, and above all not zero. This is a deliberate design position, and it is the reason a MarginOS dashboard sometimes has gaps where other tools show a confident figure. Those gaps are the product working correctly. The position, stated plainly A number on a dashboard is an instruction to act. If MarginOS fills a gap with something plausible, you cannot tell the difference between "we measured this" and "we guessed this" — and you will spend real money against the guess. So MarginOS reports what it can evidence, and reports the rest as unknown. There is no fallback constant anywhere in the - [How MarginOS calculates MER](https://marginos.com/docs/how-it-works/mer/): MER — Marketing Efficiency Ratio — is revenue divided by ad spend . At a MER of 5, every $1 of advertising is accompanied by $5 of revenue. MarginOS computes it for your whole account and for each acquisition channel, and compares it against a target band you control. It is the fastest read on your advertising in the product. It is also the shallowest, and this article is as much about the second half of that sentence as the first. MER and TACOS are the same measurement inverted If you already track TACOS (Total Advertising Cost of Sale), you already track MER. TACOS is ad spend ÷ revenue expressed as a percentage; MER is revenue ÷ ad spend expressed - [How MarginOS calculates Gross Margin %](https://marginos.com/docs/how-it-works/gross-margin/): Gross Margin % is your Gross Profit (CM1) expressed as a percentage of net revenue. Where CM1 answers "how many dollars did we keep," Gross Margin % answers "what share of each revenue dollar did we keep" — the same measurement, rebased so it can be compared across products, periods and business sizes. What it measures Gross Margin % divides the profit left after all variable delivery costs — product cost, fulfillment, payment fees and refund handling — by the net revenue that produced it, and shows the result as a percentage. Because it is CM1 rebased, everything true of CM1 is true here: it is calculated from your real orders rather than from a blended assumption, it is after - [How MarginOS turns raw data into your margins (the pipeline)](https://marginos.com/docs/how-it-works/data-pipeline/): Your margins are assembled from sources that disagree with each other: a store that knows orders but not costs, a warehouse that knows fulfillment but not customers, ad platforms that each claim the same sale, and invoices that arrive weeks after the orders they describe. This article explains what MarginOS does with all of it, and — more usefully — what it guarantees about the result. Four guarantees The mechanics matter less than the promises they exist to keep. Everything below follows from these four. 1. Your source records are never rewritten Orders, refunds and invoices are kept exactly as they arrived. When something needs correcting — you supply a real product cost, override an assumption, remap a channel — - [How MarginOS flags High Velocity, Low Yield](https://marginos.com/docs/how-it-works/high-velocity-low-yield/): High Velocity, Low Yield marks a product that sells well and earns thin. It is one of the few flags worth acting on immediately, because volume is actively working against you: every additional unit reproduces the same weak margin at scale, and the popularity of the item disguises the problem in your totals. What the flag means MarginOS raises it when a product clears two tests at once over the last 30 days: It is a fast seller for your store — units sold reach the velocity level that qualifies a product as a hero in your catalogue. Its margin percentage is thin — Gross Margin % falls below the low-yield level. Both conditions are required, and that is the - [How MarginOS flags Too Close to Cost](https://marginos.com/docs/how-it-works/too-close-to-cost/): Too Close to Cost marks a fast-selling product that still makes money, but not enough of it per unit relative to what the item costs you. It is the flag that catches products which look acceptable as a percentage and are quietly failing in dollars. What the flag means MarginOS raises it when a product meets three conditions over the last 30 days: It is a fast seller for your store — the same hero velocity gate used by High Velocity, Low Yield . It is profitable — per-unit profit is above zero. A loss-making product is a different, more urgent condition and is reported separately. Its per-unit profit is below the margin floor for that item. The floor scales ### Data & Integrations - [Why a cost landed in Unmapped Costs](https://marginos.com/docs/data-integrations/unmapped-costs/): When a cost arrives from one of your integrations and MarginOS cannot work out which product or order it belongs to, that cost is set aside rather than dropped or guessed at. In the app you see the result as Missing Cost Data on Catalog Profit, and as data-quality signals in your Margin Briefing naming the specific SKU. The cost is not lost, it is not silently spread across your catalog, and it is not counted as zero — it is held, with a reason, until it can be attributed correctly. What does it mean when a cost is unmapped? An unmapped cost is a real cost MarginOS received but could not attach to a specific product or order. It - [Connect your Shopify store](https://marginos.com/docs/data-integrations/connect-shopify/): Connecting Shopify is the first thing you do in MarginOS and the only connection that is strictly required. It installs the MarginOS app from the Shopify App Store, which brings across your orders, products, customers and refunds — the raw material every profit figure is built from. The permissions requested are read-only , and connecting puts you on the free plan with no charge and no credit card. Before you start You need an account with admin rights on the MarginOS side. Setup is restricted to admins. You need permission to install apps on the Shopify store you are connecting. A store can only be claimed once. If it is already connected to another MarginOS workspace, you will be told ### Settings - [Set your store-wide COGS, shipping and pick-pack fallbacks](https://marginos.com/docs/settings/cost-structure/): Store-wide cost defaults are the safety net MarginOS falls back on when a SKU has no cost evidence of its own. You set three of them — an average COGS percentage, an average per-unit shipping cost, and an average per-unit pick and pack fee — and MarginOS uses each one only where nothing better exists. They are training wheels: the moment a SKU gets real costs, that evidence replaces the default automatically. What are store-wide cost defaults? A store-wide cost default is a single catalog-wide figure MarginOS applies to any SKU that has no measured cost of its own, so that product still produces a profit number instead of a blank. They live in Cost Structure , under Business Profile ## Pages - [About Aron Baczoni and MarginOS](https://marginos.com/about/aron-baczoni/): Meet Aron Baczoni, founder of MarginOS. After 11 years building large-scale systems at Google, he created a Profit OS for Shopify DTC brands obsessed with margin. - [About MarginOS](https://marginos.com/about/): Learn why MarginOS exists and who we serve. A Profit & Inventory OS for $2-20M Shopify DTC brands that turns messy data into clear, profit-first decisions. - [Agentic Commerce for Shopify](https://marginos.com/profit-frameworks/agentic-commerce-for-shopify/): Three important caveats before you dive in: Strong opinion, current data. I’ve read everything I can find, talked to smart people, and tested where possible. Some of what follows is hard data, some is my interpretation. I’ll update this as reality changes. Written for a very specific audience. Everything here is framed for: Operators and Heads of Growth / RevOps at $2-20M DTC brands on Shopify Founders wearing that hat Agencies managing those brands Parallel, not replacement. Do NOT rip - [Campaign: Ecommerce Coffee Break](https://marginos.com/ecommerce-coffee-break/) - [Contact Us](https://marginos.com/contact/): Contact MarginOS for sales demos, agency partnerships, support, or security questions. Get in touch about using our Profit & Inventory OS for your $2–20M Shopify DTC brand. - [DTC Financial Benchmarks: The Definitive LTGP:CAC Ratio Guide](https://marginos.com/profit-frameworks/ltgp-cac-ratio-benchmarks/): Learn the DTC financial benchmarks that actually matter. This framework shows how to model LTGP:CAC, payback, and retention so you can scale profitably, not just revenue. - [DTC Profitability Frameworks & Models](https://marginos.com/profit-frameworks/): Explore DTC profitability frameworks for $2–20M Shopify brands: financial benchmarks, retention and re-engagement playbooks, and agentic commerce models built around Lifetime Gross Profit (LTGP). - [Full Cost Layer Money Model](https://marginos.com/profit-frameworks/full-cost-layer-money-model/): Learn the 8 cost layers Shopify leaves out – 3PL, shipping, returns, royalties – so you can calculate true profit per SKU before scaling ads. - [MarginOS for Agencies & Growth Partners](https://marginos.com/agencies/): MarginOS gives DTC agencies a Profit & Inventory OS for their Shopify clients. Move beyond ROAS to profit, payback and inventory reality, and retain clients longer. - [MarginOS is a Profit & Inventory OS made of ‘Engines’ that work together on one profit model.](https://marginos.com/product/): See what you can do inside MarginOS. Profit & Inventory Command Center, Growth, Yield, Plan and Replenish Engines turn your Shopify DTC data into trusted profit moves. - [MarginOS Privacy Policy](https://marginos.com/privacy-policy/): Last Updated: March 2, 2026 1. Introduction This Privacy Policy describes how MarginOS (“we,” “us,” or “our”) collects, uses, and protects data in connection with your use of the MarginOS analytics application (the “Service”). Our Service integrates data from your Shopify store, advertising accounts, and uploaded business documents to provide unified business analytics. This policy covers three types of data: Merchant Data: Information we collect directly from you when you create an account or contact us. Customer Data: Personal data - [MarginOS: The Automated Profitability Platform for DTC Brands](https://marginos.com/): MarginOS is a Profit & Inventory OS for $2–20M Shopify DTC brands. See SKU × channel profit, margin, and weeks of cover so you can cut leaks and scale winners. - [Pricing](https://marginos.com/pricing/): Serious profit analytics for serious DTC brands. MarginOS is a Profit & Inventory OS for $2-20M DTC brands on Shopify. Connect Shopify, Google Ads, and your 3PL to get a live Profit & Inventory Command Center that shows true SKU × channel profit, margin, and weeks of cover, so you can cut leaks and scale winners. Choose the plan that matches how serious you are about profit. No success tax. Flat pricing. No GMV tiers. Most tools charge you more - [Return Policy](https://marginos.com/return-policy/): MarginOS Return Policy Last updated: February 17, 2026 At MarginOS, we want you to be completely satisfied with your purchase. If you are not entirely satisfied, we're here to help. Returns  You have  30 calendar days  to return an item from the date you received it. To be eligible for a return, your item must be: Unused and in the same condition that you received it. In the original packaging. Accompanied by the receipt or proof of purchase. Refunds  Once - [Terms of Service](https://marginos.com/terms/): Last Updated: March 2, 2026 Welcome to MarginOS. These Terms of Service ("Terms") govern your access to and use of our website (marginos.com) and our application (app.marginos.com) (collectively, the "Service"). By accessing or using the Service, you agree to be bound by these Terms. 1. Eligibility and Account Registration To use our Service, you must be at least 18 years old. We use Google OAuth 2.0 for authentication. By signing in with Google, you represent that the information provided to - [The E-commerce Re-engagement Benchmark Vault: Data & Playbooks](https://marginos.com/profit-frameworks/ecommerce-re-engagement-benchmarks/): See DTC re-engagement benchmarks and playbooks for Shopify brands. Build welcome and win-back funnels from data, not guesses, to lift LTGP and shorten CAC payback. - [Trust The Numbers](https://marginos.com/profit-frameworks/trust-the-numbers/): Learn how to tell whether your Shopify profit tool is using ACTUAL or ESTIMATED data for shipping, 3PL, COGS, and fees – and the 5 questions to ask any vendor before trusting their margin reports. ## Blog Posts - [Calculate LTGP: The E-commerce Formula](https://marginos.com/profitability/calculate-ltgp-ecommerce-formula/): What is Lifetime Gross Profit (LTGP)? LTGP is the gross profit collected over the entire lifespan of a customer relationship. While often used interchangeably with Customer Lifetime Value (CLV or LTV), LTGP provides a more accurate picture of profitability. Revenue-based LTV calculates the total revenue a customer generates. This figure is often misleadingly high because it ignores the cost of producing and delivering the products. Lifetime Gross Profit (LTGP) subtracts the Cost of Goods Sold (COGS) from revenue, revealing the actual profit generated by each customer that can be used to cover operating expenses like marketing and salaries. Why is LTGP a Critical E-commerce Metric? Your LTGP determines your brand's growth ceiling and competitive advantage. A clear understanding of your - [How to Tag and Analyze Agentic Orders in Shopify (So You’re Not Flying Blind)](https://marginos.com/agentic-commerce/how-to-tag-and-analyze-agentic-orders-in-shopify/): What is an “agentic order” in Shopify? For our purposes, an agentic order is: Any Shopify order created via an Agentic Storefront channel (ChatGPT, Gemini, Copilot, Perplexity, etc.), where the AI assisted discovery and/or checkout. Shopify helps you here: Agentic orders land in the same Orders table as everything else They carry channel tags like  chatgpt ,  copilot ,  perplexity ,  google_ai_mode  (naming may vary) They appear as a distinct sales channel / source when you pull orders via Admin or API Your job is to: Make sure those tags are consistent Pull that subset of orders separately Compare their economics to the rest of your funnel Why tagging AI‑origin orders matters for profitability If you lump agentic orders into “online store” or “other,” you will: Overcredit Meta/Google/email - [How to Pick Your First 10 SKUs for Agentic Checkout (Without Wrecking Your Margins)](https://marginos.com/agentic-commerce/how-to-pick-your-first-10-skus-for-agentic-checkout-without-wrecking-your-margins/): What does “picking agentic SKUs” actually mean? In Shopify’s Agentic Storefronts world, not every product should be eligible for native, in‑chat checkout. You effectively have three states for each SKU: agentic_mode = 'checkout'  – AI can recommend and complete checkout natively agentic_mode = 'discovery'  – AI can recommend, but must link to your site agentic_mode = 'off'  – AI shouldn’t sell or even highlight this SKU Your first 10 agentic SKUs are the ones you allow into full autonomous selling. Everything else either stays discovery‑only or off while you learn. This is not a creative decision. It’s a unit‑economics and risk decision. Why SKU selection matters for profitability Agents don’t care about your margin. They care about satisfying constraints: price, specs, availability, - [How Do You Measure ROI on Influencer Campaigns When Attribution is Impossible?](https://marginos.com/profitability/influencer-roi-without-attribution/): This is the default with creator and UGC stuff: you won’t get perfect attribution. But you can get to "good enough to decide" if you tighten what you measure and how you think about it. You’ll never get Meta-level attribution on influencers, but here is a simple way to evaluate these campaigns without relying on last-click or just vibes. You establish the financial baseline by calculating your contribution profit per new customer and setting strict CAC payback targets before you ever look at clicks. Start from money, not clicks. Before you look at creators, you have to know your basic economics. This means calculating the contribution profit per new customer (profit after COGS, shipping, fees, average discounts, and refunds). Set - [How to Identify and Fix Common Profit Leaks in $2-20M DTC Brands?](https://marginos.com/profitability/common-dtc-profit-leaks/): Why Scaling "Hero" SKUs Can Create a Profitability Gap? Scaling a high-volume "hero" SKU without tracking real-time contribution margin often leads to a "profitability gap" where increased revenue results in decreased net cash flow. This happens because paid media algorithms prioritize conversion probability over profit-per-unit, frequently pushing products with rising COGS or high fulfillment complexity. To prevent this, brands must calculate Contribution Margin 1 (CM1) by subtracting COGS, shipping, and payment fees from net revenue for every individual SKU. The Risk: Paid channels (Meta/Google) naturally scale what converts easiest, not what is most profitable. The Fix: Audit your top 10 spend-heavy SKUs for CM1 per unit . If the margin is tightening, relegate that SKU to a secondary "attach" product - [Why is Contribution Margin More Important Than ROAS?](https://marginos.com/profitability/why-is-contribution-margin-more-important-than-roas/): Contribution Margin is superior to Return on Ad Spend (ROAS) because it measures the actual profit generated per unit after all variable costs are deducted, whereas ROAS only measures top-line revenue efficiency relative to media spend. While a high ROAS indicates marketing efficiency, it ignores Cost of Goods Sold (COGS), shipping, and transaction fees, often leading DTC brands to scale unprofitable revenue. The Mathematics of the ROAS Trap: Why Revenue Efficiency Fails ROAS is calculated simply as Total Revenue / Total Ad Spend . This metric fails as a primary KPI for profitability because it does not account for the variable costs required to fulfill that revenue. A brand can easily achieve a "healthy" 4.0 ROAS while losing money on - [How Does Repurchase Latency Directly Impact Gross Profit?](https://marginos.com/profitability/how-repurchase-latency-impacts-gross-profit/): What is Repurchase Latency? Repurchase latency is the gap between when a customer should have bought again and when they actually do. It is one of the most overlooked destroyers of Lifetime Gross Profit (LTGP) in a Direct-to-Consumer (DTC) consumables business. While churn measures the customers you lose entirely, latency measures the efficiency of the customers you keep. A customer who reorders every 40 days instead of every 30 days is still a customer, but they are 33% less valuable over the course of a year. This gap is where profit hides in plain sight. How Does Latency Create "Debt"? Latency Debt is the accumulated loss of gross profit resulting from delayed customer repurchases. Every day a customer delays their --- ## Verified Profiles & External Validation MarginOS and its founder, Aron Baczoni, are verifiable across these platforms: - [apps.shopify.com/marginos](https://apps.shopify.com/marginos) — MarginOS - [www.linkedin.com/company/marginos](https://www.linkedin.com/company/marginos) — MarginOS - [www.bbb.org/us/co/longmont/profile/marketing-software/margin-os-1296-1000194785](https://www.bbb.org/us/co/longmont/profile/marketing-software/margin-os-1296-1000194785/) — MarginOS - [www.linkedin.com/in/baczoni](https://www.linkedin.com/in/baczoni) — Aron Baczoni, founder - [www.reddit.com/user/baczoni](https://www.reddit.com/user/baczoni/) — Aron Baczoni, founder