Resources · Deploy & Infrastructure

Analytics & monitoring

Two different jobs — knowing who visited and knowing when the app broke. Here's what to run, what to skip, and what each really costs.

"Analytics" gets used to mean two completely different things: counting visitors (web analytics) and being told when the site is on fire (application monitoring). They use different tools, different vendors, and have different consent requirements.

We'll cover both. The decision tree at the bottom is the short version.

Google Analytics 4

Free, free always, and the most complete dataset on the market because half the internet feeds into it. GA4 replaced Universal Analytics in July 2023 and is now the only flavor of GA available.

The price tag is privacy. GA4 sets cookies, sends data to Google, and triggers GDPR/ePrivacy consent requirements in the EU and UK. You will need a cookie banner, a consent management platform, and to load the GA tag conditionally.

GA4's reporting is more powerful than people give it credit for — funnels, exploration reports, audience segments, conversion goals — but the UI is genuinely worse than Universal Analytics was. There's a learning curve.

This site uses GA4. It also runs Google AdSense, which itself requires a cookie banner, so the marginal cost of adding GA4 was zero. If we weren't already running ads, we'd probably have picked Plausible.

Plausible

The best of the privacy-first analytics crop. $9/month for up to 10k pageviews, $19/month for 100k, scales smoothly. No cookies, no personal data, GDPR/CCPA/PECR compliant out of the box, no banner needed.

The dashboard is beautifully focused: visitors, pageviews, sources, top pages, devices, locations. That's mostly it. If you want a 14-dimension funnel report, this is the wrong tool.

Plausible is open source and self-hostable, which is a nice insurance policy. The hosted version on EU servers is the easy mode.

Pick Plausible if: privacy is part of your brand promise, you want a dashboard a non-technical co-founder will actually look at, or you just don't want to deal with a cookie banner.

Fathom

Fathom is the other privacy-first option, very similar in spirit to Plausible. $15/month for up to 100k pageviews, scales by usage, no cookies, no banner. Run by a small team, EU-hosted option available, also has email reports and an uptime monitor add-on.

Plausible vs Fathom is largely a coin flip. Plausible has a slightly nicer dashboard; Fathom has slightly better support and has been at it longer. Either is fine.

Vercel Analytics

If you host on Vercel, you can flip on Vercel Analytics for free (Hobby) or $10/month for the first 25k events on Pro. It's privacy-friendly (no cookies), shows up natively in the Vercel dashboard, and integrates with Speed Insights for Core Web Vitals.

The data set is shallower than GA4 and the cost scales fast on a busy site. Pick Vercel Analytics for: a quick built-in dashboard you don't have to wire up, projects already on Vercel where you don't want a separate vendor.

PostHog

PostHog is the closest thing to "everything in one box" — analytics, session replay, feature flags, A/B tests, surveys, and an event-driven data model that lets you query anything. Free tier covers 1M events/month, then usage-based. Hosted in the US or EU; also self-hostable.

The trade-off is complexity. PostHog has the steepest learning curve of anything on this page, the dashboard has roughly six tabs more than Plausible, and instrumenting events well takes some thought. But once it's running, you have a tool that grows with the company instead of one you'll outgrow.

Pick PostHog if: you want analytics, feature flags, and session replay in one bill, the team is comfortable with an event-data model, or you're shipping a product where understanding behavior matters more than counting pageviews.

Sentry

The default error tracker. Free tier is 5,000 errors/month, 10,000 performance units, 50 replays. Team plan starts at $26/month for 50k errors. SDKs exist for every framework that matters, and the source-map handling for JavaScript is excellent.

Sentry tells you what broke, where, for how many users, with the stack trace and breadcrumbs. It's the difference between "a user emailed saying it didn't work" and "exception X happened to 12 users in the last hour, here's the line of code." Install it on day one of any project that has real users.

npm i @sentry/nextjs
npx @sentry/wizard@latest -i nextjs

BetterStack

BetterStack (formerly Better Uptime + Better Stack Logs) bundles uptime monitoring, log aggregation, status pages, and incident management. Free tier covers 10 monitors with 3-minute checks and a basic status page. Paid tier starts at $29/month for 30-second checks, on-call rotation, and unlimited team members.

The status page alone is worth the install. Free, branded, automatic — no excuse not to have one.

Pick BetterStack for: uptime monitoring + a public status page + log search in one tool. It's the closest thing to "Datadog for normal-sized businesses."

Pingdom

The grandparent of uptime monitoring. Owned by SolarWinds now. Starts at $10/month for 10 uptime checks. The brand is still recognized but the product hasn't moved in years. We'd pick BetterStack over Pingdom every time these days.

AWS CloudWatch

If you're on AWS, CloudWatch is already collecting metrics you didn't know you cared about. CloudFront request counts, S3 bucket size, Lambda invocations, error rates — all there, all free up to a generous tier.

CloudWatch Alarms can email you when traffic spikes or drops. Logs Insights can search for errors. Synthetics can hit a URL on a schedule and alert if it 500s.

It is not a great experience compared to BetterStack or Datadog, but it's free and integrated. For an MVP on AWS, the right move is "enable CloudWatch alarms for the obvious things, layer Sentry on top for app errors, defer everything else."

Comparison: web analytics

Tool Free tier Paid starts at Cookies / banner needed? GDPR-clean? Real-time? Notable extras
GA4 Free forever $0 Yes / Yes Only with consent Yes Massive ecosystem, BigQuery export
Plausible 30-day trial $9/mo (10k pv) No / No Yes Yes (hosted) Open source, simple dashboard
Fathom 30-day trial $15/mo (100k pv) No / No Yes Yes EU hosting, uptime add-on
Vercel Analytics Hobby (limited) $10/mo for 25k events No / No Yes Yes Built into Vercel dashboard
PostHog 1M events/mo Usage-based after Optional Yes (config) Yes Flags, replay, surveys, A/B

Comparison: monitoring

Tool Free tier Paid starts at What it watches Best for
Sentry 5k errors/mo $26/mo App errors, performance, replays Every project with real users
BetterStack 10 monitors, 3-min checks $29/mo Uptime, logs, status pages Public-facing sites
Pingdom None $10/mo Uptime Legacy installs
CloudWatch Generous AWS-tier Pay-per-metric beyond AWS infra Anything AWS-hosted

Our recommendation

For web analytics, the decision tree is short:

  • You're already running AdSense (this site does both): GA4. The cookie banner is unavoidable from AdSense anyway, so you might as well get the best free analytics into the same bargain. The data quality is excellent and the price is right.
  • Privacy is a brand value: Plausible. $9-19/month, no banner, dashboard your co-founder will actually open.
  • You want analytics + flags + session replay in one tool: PostHog. Pay the learning-curve tax up front, get a tool that lasts.
  • You're on Vercel and just need numbers: flip on Vercel Analytics, move on with your life.

For monitoring:

  • Always: Sentry on the app, even on day one. The free tier is enough for any pre-revenue MVP.
  • Once you have users: BetterStack for uptime + status page. Free tier is fine to start.
  • If on AWS: enable CloudWatch alarms on CloudFront 5xx rate, S3 bucket size, and Lambda errors. Costs nothing, catches the obvious failures.

The mistake we see most often: shipping with no error tracking at all and finding out about bugs from angry users on Twitter. Don't be that. Sentry takes 10 minutes.

The second mistake: signing up for Datadog. Datadog is amazing and will bill you four figures a month before you notice. Stay on the cheap tier of cheap tools until the data volume forces you to upgrade.