Now in public beta

Analytics, Logs & AI Debugging
in one simple tool

Stop juggling PostHog, Datadog, and ChatGPT. GoodLogs gives indie SaaS teams product analytics, structured logging, and an AI that actually explains why things broke — all for $0 to start.

Free tier: 1M events · 100MB logs · 5 AI queries/day

app.ts — 4 lines to integrate
import { GoodLogs } from "@aj-2000-test/goodlogs-sdk"

GoodLogs.init("gl_pk_your_key")

// Track events
GoodLogs.track("signup", { plan: "pro" })

// Send logs
GoodLogs.error("Payment failed", { orderId: "ord_123" })

Three tools. One dashboard.

Everything you need to understand your users and debug production — without the enterprise complexity.

Product Analytics

Track events, page views, DAU, funnels, and retention. Understand what your users actually do.

  • Custom events & properties
  • DAU / WAU / MAU
  • Event trends & breakdowns
  • Real-time dashboard

Structured Logging

Ingest, search, and filter application logs. See exactly what happened before an error.

  • Full-text search
  • Severity filtering
  • Code location tracking
  • JSON metadata support

AI Debugging

Ask questions in plain English. The AI reads your logs and events, then explains what went wrong.

  • Natural language queries
  • Root cause analysis
  • Cross-references logs & events
  • Streaming responses

Up and running in 5 minutes

No agents, no YAML files, no infrastructure.

1

Install the SDK

npm install @aj-2000-test/goodlogs-sdk — zero dependencies, 4KB gzipped.

2

Add 2 lines of code

Call init() with your API key. Track events and send logs anywhere in your app.

3

Ask the AI

Open the dashboard, click AI Chat, and ask 'Why are payments failing?' — get an answer in seconds.

MCP Server

Query logs from your editor

Connect GoodLogs to Cursor, VS Code Copilot, Windsurf, or Claude Desktop. Ask about errors, search logs, check alerts — without leaving your IDE.

Setup (30 seconds)

// .vscode/mcp.json
{
"servers": {
"goodlogs": {
"command": "npx",
"args": ["@aj-2000-test/goodlogs-mcp"],
"env": {
"GOODLOGS_API_URL": "https://...",
"GOODLOGS_API_KEY": "gl_sk_..."
}
}
}
}

What you can ask

Show me errors from the last hour

Searches error logs with context

What's causing the payment failures?

Aggregates error patterns

Are any alerts firing?

Checks alert rules and timeline

How many signups today?

Queries event counts

Built for indie teams

We made the tradeoffs so you don't have to.

Fast ingestion

Sub-millisecond accept time with async batch writes. Your app never waits on our DB.

TypeScript SDK

ESM + CJS, zero deps, auto page-close flush with keepalive. NPM install and go.

AI-native

Not bolted on — AI debugging is the core product. GPT-4o reads your actual logs.

Secure by default

Public keys for browser events, secret keys for server logs. HMAC-verified webhooks.

Unified queries

Same query API powers the dashboard, AI agent, and MCP server. One source of truth.

MCP Server

Connect GoodLogs to Cursor, Windsurf, or any AI IDE. Query your logs from your editor.

Everything you need to ship with confidence

Every feature an indie team needs — from error tracking to session replay — without the enterprise price tag.

🐛

Error Tracking & Issues

Sentry-like error grouping with stack traces, breadcrumbs, and AI root cause analysis. Auto-capture from JS and Python SDKs.

Auto-captureStack tracesBreadcrumbsAI analysis
🎬

Session Replay

Watch exactly what users did before they hit a bug. rrweb-powered recording with click heatmaps and video export.

rrweb recordingClick heatmapsVideo exportPrivacy controls
🔔

Smart Alerts

Threshold, pattern, anomaly, and rate alerts. Notify via Email, Slack, Discord, PagerDuty, or Opsgenie.

6 alert typesSlackPagerDutyOpsgenieEmail
📊

Custom Dashboards

Drag-and-drop widgets powered by GQL. Metrics, charts, tables — share with a public link.

Drag & dropGQL-poweredPublic sharingTemplates

Web Vitals & Performance

Core Web Vitals (LCP, INP, CLS, FCP, TTFB) + endpoint p95 latency. Automatic from the SDK.

LCPINPCLSp95 latencyAuto-collected
🔗

OpenTelemetry / OTLP

Native OTLP receiver for traces and logs. Drop-in replacement for your existing OTel collector.

OTLP/JSONOTLP/ProtoTracesLogs
🟢

Status Pages

Public status page for your customers. Auto-synced with your alert rules — no manual updates.

Public URLAuto-sync alerts90-day uptimeIncidents
🤖

AI Agent + MCP

Natural language queries across all your data. Built-in MCP server for Cursor, Windsurf, and Claude.

NL→GQLTool-calling agentMCP serverChart rendering
< 5 min
Setup time
3
Global regions
50ms
Avg query latency
99.9%
Uptime SLA

Works with your stack

First-class SDKs + OpenTelemetry for everything else.

JavaScript / TypeScriptPythonReact / Next.jsFlask / FastAPI / DjangoNode.jsOpenTelemetry

Simple, predictable pricing

No per-seat charges. No surprise bills. Flat monthly pricing.

Free

For side projects and early-stage apps.

$0forever
  • 3 projects
  • 1M events/mo
  • 100MB logs/mo
  • 5 AI queries/day
  • 3-day retention
  • 2 members
Get Started Free

Starter

For indie hackers shipping their first SaaS.

$15/month
  • 5 projects
  • 3M events/mo
  • 1GB logs/mo
  • 25 AI queries/day
  • 14-day retention
  • 5 members
Start Free, Upgrade Later
Most Popular

Pro

For growing products that need real observability.

$39/month
  • 20 projects
  • 25M events/mo
  • 25GB logs/mo
  • 500 AI queries/day
  • 90-day retention
  • 15 members
  • Priority support
Start Free, Upgrade Later

Team

For teams shipping production software.

$99/month
  • 50 projects
  • 50M events/mo
  • 50GB logs/mo
  • 1K AI queries/day
  • 365-day retention
  • 25 members
  • SSO
  • Dedicated support
Start Free, Upgrade Later

Stop guessing. Start knowing.

Set up GoodLogs in 5 minutes. Free forever for small projects.