That's about right. The one real improvement in two years is that household sharing is standard now rather than a premium add-on at most of them.
Owen
@overlap_owen
Learned the hard way that back-to-back standups are the thing that actually breaks people.
105 credit Trusted
- From answers
- 0
- From questions
- 105
Add a second workflow that checks whether the first one ran and opens an issue if it did not.
Practical shape that works: grant from the client's currentEntitlements as a fast path so the user sees the right thing immediately, and let the server notification correct the record behind it. Neither one has to be fast for the other to be right, and you stop caring which arrives first.
I disagree slightly with the framing that Search Console is the safe fallback. GSC clicks and GA4 organic sessions are measuring different things and they routinely differ by 10 to 20 percent even in a healthy setup, because GSC counts clicks on results and GA4 counts sessions that fired a tag. Use GSC to answer did search send fewer people, and only that. If GSC is flat and GA4 is down, your tag or your consent layer is the story.
Half of my users could not spell rclone, so I did both: a "download everything" page that walks the manifest in the browser and saves file by file, and the manifest itself for anyone who wants to automate. The browser version is dumb and slow and nobody complained once.
Watch out for catch-all domains. A verifier will come back with something like accept-all or unknown rather than valid, because the server accepts everything and sorts it out later. Those are exactly the ones that bounce days afterwards or land in a black hole. On catch-alls I use the contact form instead and do not spend a guess on them.
Same class of thing here - an error reporting SDK initialised in a shared config import. Guarded it behind an env check and the hang vanished.
This is the single most useful thing in the thread. Write the criteria down now, while you're calm, and judge against those in March rather than against how you feel that week.
The weight point is the one that gets missed constantly. Firmness ratings are written for someone around 80 kg, and at 60 the same bed is effectively two steps firmer. Nothing wrong with the mattress, wrong with the label.
We did the "Playwright against a component route" thing for about eighteen months. It works. Two things eventually pushed us off it:
- roughly 700ms per spec versus 90ms, and it compounds
- you cannot assert on props or callbacks, so you end up asserting on
data-testidsoup that exists purely for the test
If the browsers are already installed for your e2e suite, browser mode is a much smaller step than it looks from the outside. Same locators, same trace viewer.
The first thing that broke for me was not mail, it was insurance. Vehicle insurance is priced on where the vehicle is kept, and health cover in the US is largely organised by state, so a domicile you never physically visit creates questions the moment you need to use either one. I got a straight answer from an insurance broker who deals with full-time travellers and it cost me nothing to ask. Do that before you cancel the lease, not after.
And use the mail service address consistently everywhere, including your employer's payroll record. Half a dozen institutions with three different addresses on file is what actually causes the mess.
Watch the analytics line before it tips. Generous free tiers on event-based products are generous right up to the month you get some attention, and then you find out that the pricing is per event and your marketing site was firing events on every scroll. Before you cross the threshold, go and turn off the events nobody has ever queried. Most people are paying to store pageviews on pages they do not look at.
Mine did almost exactly this in year one, then two flat-ish years, then the fourth year did more than the first three combined. The returns don't arrive evenly and there's no version of this where they do.
The weekend is true for the build. It is the ongoing "why does this only happen on one mid-range Android from 2022" that costs, and solo that is exactly the tax I would defer until something is working.
A downloadable sample file that goes through the real importer solves the thing I could not articulate. It is not fake, it is just theirs and disposable.
We found ours by putting active and completed on one chart. Active rising while completed is flat is the whole signature and it is visible in about five seconds. Worth having that graph before you need it.
The exit-point notebook is the only competitor research that has ever given me anything useful. One addition: note whether you left the tool because it could not do the thing, or because it could do the thing but the flow was miserable. Those are two very different businesses. The first one you can win with features. The second one you win with taste, and taste is much harder to copy but also much harder to sell in a comparison table.
I want to push back on the answer above about bad reviews being an opening, which is what people usually conclude from this exercise. Bad reviews on a mature product are frequently about things you will also have: billing edge cases, one integration being flaky, support being slow at scale. Those are not strategy gaps, they are the tax of running a product with real customers, and you will inherit them the moment you have more than fifty accounts.
The genuine gap is usually a segment, not a feature. Somebody the incumbent cannot serve profitably because of language, region, an ugly legacy file format, a regulator, or a workflow that only exists in one industry. That is the door. "Same thing but better designed" closes it on your fingers.
Going forward, two things fixed this permanently for me. First, the quote lists what's included AND a short 'not included' list. Second, every request that arrives by message gets answered with 'happy to add that, it's about £X and pushes delivery to the Nth: want me to?' Every single time, immediately, no exceptions. It feels petty for the first month and then clients just stop asking for free work.
Disagreeing with the direction of the whole thread. At twelve trials from nine hundred visits, the testimonial section is not what is stopping anyone. That is a page that is not making it obvious what the thing does.
What I would do with that slot instead is a forty second screen recording, no voiceover, no music, that shows the boring job being done end to end. People who are unsure what a tool is will watch a short silent video and will not read a quote. When I swapped a quote block for a clip like that on a page with similar traffic, trials moved more than any wording change I have ever made.
Keep one quote underneath it. Just do not expect the quote to carry the page.
Annual on a fixed date plus bands is what I do. Birthday, every year, plus an override if anything hits 5 points off in between. Two decisions a year maximum.
Level in year one is roughly what I feared and I think I can live with that if the second year is better. The storage cost is one I had completely left out.
Two quarters is roughly what I feared. Half budget rather than all of it might be survivable, but only just.
Evenings matter here more than the maths does. Unpredictable small clients wanting 'just a quick thing' on a Tuesday night is what burns people out of side work. A single client with a predictable weekly rhythm is far easier to sustain for a year, and sustaining it for a year is worth more than an extra £3 an hour.