We hired a growth agency for 6 months and paid them $8k a month. Our best month came 2 weeks after we fired them.

I want to write this carefully because I don't think agencies are a scam, I think we were the wrong client at the wrong stage and nobody was honest with us about that including us

we hired them at about $18k MRR, the pitch was that they'd done this for 12 other SaaS companies, they had a playbook, they knew the channels, we just needed to execute, and honestly after 8 months of grinding distribution ourselves we were tired and that pitch was exactly what we wanted to hear

the first month was strategy and onboarding, lots of documents, positioning frameworks, ICP workshops, it felt productive, second month they started running paid on LinkedIn and Google, third month the leads were coming in and they looked right on paper but almost none of them were converting, the ICP we'd aligned on in month one turned out to be the ICP that looked good in a deck not the ICP that actually bought our product

we flagged this in month 4 and the response was that conversion is a product problem not a traffic problem and we needed to improve our onboarding before the ads could work, which might have been true but also meant we were paying $8k a month to run ads into a funnel they were telling us was broken

we ended the contract after month 6, total spend $48k, net new ARR attributable to that period maybe $6k

two weeks after we stopped running their campaigns we went back to doing what had worked before, direct outreach, honest Reddit posts, a few well placed partnerships, and we had our best month since founding

the thing I've thought about most since: the agency's job was to run our growth, our job was to grow, and those two things are not the same job, they needed to show activity and report metrics, we needed customers, and for 6 months we confused the reporting for the result

if you're under $50k MRR and you're thinking about a growth agency, I'd genuinely ask whether you've exhausted the things only you can do first

reddit.com
u/Ok_Regular_8233 — 8 hours ago

I gave my business partner full QBO access. He's not my business partner anymore. Here's what I found.

this is a long one and I'm sharing it because I wish someone had told me this before it happened to me

my business partner and I built a small SaaS together for about 3 years, we had a solid working relationship, split responsibilities cleanly, he handled ops and finance, I handled product and growth, and because that was the division of labor he had full admin access to QuickBooks and I basically never logged in

we had a falling out earlier this year, not dramatic, just a fundamental disagreement about direction that made it clear we couldn't keep working together, and when I finally sat down and went through the books properly for the first time in about 18 months I found things that didn't make sense

vendor payments to a company I didn't recognize that had been running for 11 months, I looked it up and it was registered to a family member of his, a salary line that had been quietly increased twice without any conversation, a few transactions coded as business expenses that were personal based on the descriptions, none of it huge individually, together it was about $34k over 18 months

I'm not going to pretend I handled this perfectly or that I know exactly where the line was between sloppiness and intent, we settled it privately and I'm not going to litigate it here

but here's what I learned and what I'd tell anyone with a business partner handling the books: no single person should have both the ability to create a vendor and the ability to approve a payment to that vendor, that one control catches most of this before it starts, and it takes about 10 minutes to set up in QBO user permissions

also run an anomaly report on your own books once a quarter, just look for anything that doesn't match the pattern of the prior three months for that vendor or category, it takes 20 minutes and you will find things

I found out too late, you don't have to

reddit.com
u/Ok_Regular_8233 — 8 hours ago

I reported a critical bug 3 times. Got marked as "won't fix" all 3 times. It hit production and took down 12% of our users for 4 hours.

I want to tell this story because I think it's more common than people admit and nobody talks about it because it makes everyone look bad including me

I found a race condition in our sync logic about 6 weeks before it became an incident, it only triggered under a specific set of conditions, background sync running while the user was actively editing a record, and when it did trigger it corrupted the local state in a way that required a full re-onboarding to fix, not a refresh, a full wipe and restart

I filed it with a reproduction case, screen recording, the exact sequence, the device conditions, everything, marked it P1

it came back as won't fix, the comment said the reproduction case was too narrow to prioritise, it would affect less than 1% of users in practice

I re-filed it two weeks later after I found a second reproduction path, different entry point, same corruption outcome, now I had two videos and a written explanation of why I thought the underlying issue was broader than the specific triggers I'd found

won't fix again, this time with a note saying the team was focused on the upcoming release and edge cases would be revisited in the next cycle

I filed it a third time with a note that said explicitly "I believe this will hit production and when it does it will be bad" and I got a thanks for the diligence, added to backlog

six weeks later it hit production on a Tuesday morning, 12% of active users, 4 hours to resolve, all hands incident, and the postmortem listed it as an "unknown race condition that appeared without warning"

I didn't say anything in the postmortem meeting, I just sent the three ticket links to my manager afterwards

the part that actually bothers me isn't that the bug shipped, bugs ship, that's real life, it's that the system worked exactly as designed, the ticket was filed, reviewed, and consciously deprioritised three times by people who had the information and made a choice, and then when it blew up it got treated like it came from nowhere

QA's job is to find things, but finding them is only half the job, the other half is surviving the process of trying to get someone to care before it's too late

reddit.com
u/Ok_Regular_8233 — 8 hours ago

We killed our free tier and revenue went up 30% in 90 days. Everyone told us we'd die without it.

I want to share this because the "you need a free tier to grow" advice is repeated so confidently that we almost didn't do it

we had a free tier for 18 months, it was generous, genuinely useful, and it was quietly destroying the business, not because free users were expensive to serve, although they were, but because of what they were doing to our sales motion

free users dominated our support queue, 70% of inbound tickets came from people paying us nothing, our onboarding was built around getting free users to the aha moment instead of getting paying customers to value fast, and every product decision was being pulled toward features that free users asked for loudly, which were almost never the features our paying customers actually needed

the argument for keeping it was always "top of funnel, brand awareness, word of mouth" and those things are real but they're also very hard to measure, what was easy to measure was that our free to paid conversion rate was 2.3% after 18 months and wasn't moving

we killed the free tier in January, replaced it with a 14 day trial, no credit card, full access, and the first 90 days were genuinely scary because signups dropped and we second-guessed everything

then the conversion rate hit 18% and we stopped second-guessing

the people who sign up for a free tier and never upgrade are not future customers, they're a support burden with a story you tell yourself about pipeline, the people who sign up for a trial with genuine intent convert at a completely different rate because they came in with a different mindset

everyone will tell you to build a free tier, question whether they've actually run the numbers on what it costs them

reddit.com
u/Ok_Regular_8233 — 1 day ago

I found $8,000 in duplicate payments hiding in a client's QBO file and the way I found them is embarrassingly simple

This client had been with their previous bookkeeper for 3 years and the books were "clean" meaning everything was reconciled and categorized, I took over and for the first two months I didn't notice anything unusual because the surface level looked fine.

Then one day I was reviewing AP and noticed that a vendor had been paid twice in the same week for very similar amounts, $2,340 and $2,340, same vendor, 3 days apart, different check numbers, I asked the client and they said "oh yeah that happens sometimes, the vendor sends a second invoice if we don't pay the first one fast enough so sometimes we pay both."

That one sentence made me go through every vendor with more than $5,000 in annual payments and run a simple duplicate check, I sorted transactions by vendor then by amount and looked for identical or near-identical amounts hitting within 14 days of each other.

Found 11 duplicate payments across 6 vendors totaling just over $8,000 in the current year alone, some were true duplicates where the vendor invoiced twice and the client paid both without checking, some were situations where a payment was made by check AND by online bill pay because two different people in the office handled it.

The fix was simple, contacted each vendor, identified the overpayments, and got credits applied to future invoices, took about 3 hours total, recovered $8,000.

The embarrassingly simple method was literally sorting by vendor and amount and eyeballing duplicates, no special tool, no complex analysis, just sorting and looking, I now run this check quarterly for every client and I find duplicates about 30% of the time, it's never $8,000 again but even catching a $500 duplicate pays for the 20 minutes the check takes.

reddit.com
u/Ok_Regular_8233 — 1 day ago

Our "100% test coverage" meant nothing. We found out the hard way.

I want to talk about the vanity metric that nearly cost us a major client

we had 100% coverage on our critical flows, login, onboarding, payment, core feature, we had built it over 6 months, it was the thing we pointed to in investor calls when someone asked about quality, our QA process is solid, we have full automated coverage on everything that matters

what we didn't have was tests that ran on real devices, everything ran on emulators, and emulators lie

the client was a mid-size company, about 800 employees, they had rolled our app out to their team as part of a pilot, and two weeks in their IT manager emailed us to say the app was basically unusable on the Samsung devices their company had standardised on, specific model, Android 12, the navigation bar was overlapping our bottom UI, buttons were partially hidden, some screens had text running off the edge

we checked our test suite, everything was green, 100% pass rate, the emulator didn't replicate Samsung's One UI implementation and none of us owned that specific device so nobody had ever seen it

we nearly lost the contract, we kept it by fixing everything in 48 hours and being honest about what happened, but the conversation where I had to explain to a client that our full automated test coverage had missed their entire device configuration is one I think about a lot

coverage percentage tells you how much of your code a test touches, it tells you nothing about whether your app actually works on the devices your users are holding, those are completely different questions and I had confused them for two years

reddit.com
u/Ok_Regular_8233 — 1 day ago