OpenTrackPlan

Open standard for tracking plans

Define your analytics events in YAML with full schema validation. Keep your tracking plan in version control, validate in CI/CD, and generate type-safe code for any platform.

Think of it as OpenAPI for product analytics — a single source of truth that keeps analysts, developers, and data teams aligned and in sync.

curl -fsSL https://opentp.dev/install | bash
powershell -c "irm opentp.dev/install.ps1 | iex"
npm install -g opentp
events/auth/login_click.yaml
opentp: 0.5.0

event:
  key: auth::login_click

  taxonomy:
    area: auth
    event: login_click
    action: User clicks the login button

  payload:
    platforms:
      all:
        active: 1.0.0
        history:
          1.0.0:
            schema:
              event_name:
                value: login_click
              auth_method:
                enum: [email, google, github]

The Problem

  • Analysts describe events in Google Docs
  • Developers implement what they think was meant
  • QA checks manually, missing edge cases
  • Data in analytics diverges from specs
  • Nobody knows which events are active or broken

The Solution

  • Single source of truth in version control
  • Automatic validation in CI/CD
  • IDE autocompletion with JSON schemas
  • Code generation for any platform
  • Full history of every event change

Why OpenTrackPlan?

Validate

Catch errors before they reach production. Validate event schemas, field types, and naming conventions.

Generate

Export to JSON, YAML, or use templates to generate TypeScript types, Swift structs, and more.

Extend

Add custom transforms, validation rules, and generators. Integrate with your existing tools.

Automate

Run in CI with GitHub Actions. Block PRs with invalid events. Keep your tracking plan in sync.