5 Reasons Your SaaS Gross Margin Looks Better Than It Is
Sam's List Editorial | 2026-06-23
5 Reasons Your SaaS Gross Margin Looks Better Than It Is A clean 85% gross margin is the number that gets you a meeting. It's also the number most early SaaS books get wrong. Here's the uncomfortable part: a SaaS gross margin overstated by sloppy expense coding doesn't just flatter your deck. It misleads you. You price wrong, you forecast wrong, and the first sharp investor who reads your financials backs out of diligence quietly. The good news is that an overstated margin is almost always a categorization problem, not a real-economics problem. The cash already left your account. Someone just parked it in the wrong row. Find the five usual suspects below and your "true" gross margin shows up — usually 10 to 20 points lower than the headline, which is exactly the number you should be running the business on. Reason 1: SaaS gross margin overstated by a hosting bill hiding in operating expenses This is the big one. Your AWS, Google Cloud, or Azure invoice is the cost of delivering the product your customer pays for. Under cost-accounting logic, the cost of delivering revenue belongs in cost of revenue — your COGS — not down in operating expenses next to rent and software subscriptions. When founders lump infrastructure into "OpEx" because that's where the bill landed in their accounting software, gross margin inflates. On a company spending 15% of revenue on hosting, moving that line where it belongs can drop reported gross margin by roughly 15 points overnight. It's not a loss. It's the truth catching up. ASC 350-40 governs how SaaS hosting and internally-developed software is treated for accounting, and it exists precisely because "where the invoice landed" is not the same as "where the cost belongs." Reason 2: Support and onboarding salaries that quietly live under G&A Here's the rule of thumb that trips up generalist bookkeepers: if a salary is required to deliver the service the customer is paying for right now , it usually belongs in COGS. Customer support that keeps existing accounts running and onboarding teams that get a new customer live are both delivery costs. A SaaS COGS what-to-include checklist almost always puts the fully-loaded cost of those people — salary, benefits, payroll tax — in cost of revenue. A generalist parks all headcount under G&A because that's tidy. The result is a gross margin that looks like a pure-software business when you're actually running a high-touch one. Sales and marketing salaries stay in OpEx — those win future revenue, they don't deliver current revenue. The line matters. Reason 3: Payment processing fees...