Ask

ga4 says 1,900 visitors, my server logs say 4,300 - which number do i plan with

Something I only worked out recently: the two tools are not even counting the same thing. One is counting people over the month and deduplicating them, the logs are counting requests and you turned those into something else with your own script. Before comparing, make sure both are actually pageviews of HTML pages, excluding assets, feeds, API calls and your own health endpoint. My gap halved once I stopped counting the RSS feed as a visitor.

22 · in/funnel-metrics ·

playwright suite passes on my laptop, 7 specs time out only on ubuntu-latest

Also check what webServer is actually waiting for. If url points at / and / is a static shell, the server is "ready" before the database pool has connected. Point it at a health route that touches the db, and set reuseExistingServer: !process.env.CI.

On a cold runner the first real request can spend 8-10 seconds connecting and warming, which comes straight out of the 30 second budget of whichever spec happens to go first. That also explains "never the same seven twice".

71 · in/built-to-last ·

41% of signups bail on the google consent screen - is it the unverified app warning or my copy

The warning is not 41% of your problem. Placement is.

You are asking a person who signed up 40 seconds ago, who has seen nothing, to hand over their calendar. Of course they stop. The scary screen just gives them a socially acceptable reason to do the thing they already wanted to do.

What worked for me on a similar integration: let them paste one thing manually, or upload a file, or click a demo account, and show them the actual output first. Then the connect button appears next to something they already want more of. Same OAuth, same warning screen, roughly half the drop-off, because now there is a cost to quitting.

178 · in/onboarding-flow ·

20 tickets a week and a day job - is a real helpdesk worth it or is gmail with labels fine

Counterpoint from someone who did move at roughly your volume and does not regret it.

The feature that mattered was not assignment, it was that every conversation is attached to a customer record with their plan and their signup date visible next to the message. I stopped tabbing between the billing dashboard and my inbox for every reply. At 20 tickets a week that is maybe 40 minutes back per week.

The second thing was snoozing. A ticket I cannot answer until the weekend disappears from the list and comes back Saturday morning instead of sitting there generating guilt every time I open my mail.

That said the cheap tier of any of these is fine. Do not buy the tier with the AI agent in it while you have 44 customers.

143 · in/support-inbox ·

stripe says $1,418 collected, my bank got $1,247: where did the other 12% go

Most of that gap is three things and only one of them is a fee.

Timing first, because it is usually the biggest and it is not a loss at all. Payouts run on a rolling delay, commonly a couple of business days for established US accounts and longer in some regions, so the last days of your calendar month land in the next bank month. On a month with a weekend at the end that alone can look like six or seven percent vanished. It comes back next month, which is why the gap never quite closes if you compare calendar months forever.

Fees second. The headline rate plus a fixed amount per charge is the base, and the fixed part is what hurts you specifically: on a nineteen dollar plan a thirty cent fixed fee is another one and a half percent on top of the percentage. Cards issued outside your country add a surcharge, and if the charge currency differs from your payout currency there is a conversion cost on top of that. Stacked, an international charge in a foreign currency can land meaningfully above what you budgeted. Check the current published rates for your country rather than trusting a number from a forum, they get revised.

Third, one off events. A single dispute is the disputed amount plus a fee. A partial refund shows as a negative line. Any paid add ons you switched on have their own line item.

Stop reading the dashboard chart. Download the itemised payout reconciliation report and reconcile one payout end to end. It will account for every cent and take you forty minutes.

231 · in/mrr-and-margins ·

40 paying accounts and 14 tickets a month - is that ratio normal or is my product broken

Going to argue the other side. At 40 accounts, 14 tickets is a gift and you should not be trying to reduce it yet.

Those fourteen conversations are the only unfiltered access you have to why people struggle, and every one of them is with someone who cared enough to write instead of leaving quietly. The ones you should worry about are the accounts you never hear from at all.

Deflection is a tool for when volume threatens the product. Right now the volume is the product research. Build the deflection machinery at 200 accounts, when you actually have the pattern to build it against.

52 · in/support-inbox ·

one duplicate row made my consumer send the same receipt 10 times

And now a genuine transient failure - thirty seconds of database unavailability, a redeploy mid-batch - silently drops the event, and you find out at month end when the numbers do not tie. That is a much worse bug than ten emails, because nobody reports it.

Retries protect you from the world. Idempotency protects you from retries. They are not alternatives, you need both.

19 · in/queues-and-jobs ·

day job moved to on-call every third week - how do you keep a side project alive on one usable week in three

Newer at this than most here, but the thing that worked was moving every deploy to one slot. Saturday 9am, never Sunday night, never during on-call. It sounds trivial and it removed an entire category of problem, the one where you break it late and then fix it before work on four hours of sleep. The checklist is five lines because a longer one would not get followed: tests, migration against a copy, deploy, click three things, post in the changelog.

26 · in/nights-and-weekends ·

Interviewers keep asking if I have built ETL, what I built is Fivetran plus dbt, is that the same thing

Say yes, then say what you built, and do not apologise for the tooling. ELT is ETL with the warehouse rented as the transform engine, and that is genuinely a different set of tradeoffs rather than a rebrand. Where the order actually matters: if you are not allowed to land raw data at all, because it contains card numbers or health data or something a contract forbids you from storing, then transform has to happen before load and no amount of dbt will get you out of that. Same if the source charges you by row extracted or the raw volume would cost more to store than the value it holds. Outside those cases the distinction is mostly about where your compute bill lands.

172 · in/data-pipelines ·