Find every missing and broken analytics event in your codebase
Ordaze's scanner performs static analysis on your repositories and maps every analytics call back to your tracking plan, revealing gaps, broken events, and coverage percentages per platform.
Static Analysis
Parses your source files without running your app. Works on Swift, Kotlin, TypeScript, and Python codebases.
Coverage Reports
Get a percentage breakdown by platform and event. Know exactly where your analytics gaps are.
Broken Event Detection
Flags calls that use the wrong event name, skip required properties, or pass invalid enum values.
CI/CD Gate
Fail the build when coverage drops below a configurable threshold. Prevent regressions automatically.
Scan your codebase. No runtime required.
The Ordaze scanner uses static analysis to parse your source files and extract every analytics call. It then compares those calls against your tracking plan schema, without running your app, setting up a test environment, or instrumenting production.
Works with Swift, Kotlin, TypeScript, and Python. Point it at a repository via the CLI or connect it to your CI pipeline for automated checks on every PR.
- Detects calls to your analytics provider (Amplitude, Mixpanel, Segment, custom)
- Matches call sites to events in your tracking plan
- Flags missing required properties and wrong enum values
- Reports coverage per event, per platform
- Outputs machine-readable JSON for pipeline integration
$ npx ordaze scan ./ios-app ./android-app ./web-app Scanning iOS... ████████████ 42 files Scanning Android... ████████ 38 files Scanning Web... ██████████████ 67 files ✓ page_viewed iOS Android Web ✓ signup_completed iOS Android Web ⚠ checkout_completed iOS Web → Missing on Android ✗ cart_abandoned → Not found in any platform Coverage: 78% (14/18 events across all platforms) 2 warnings · 1 error
| Event | iOS | Android | Web |
|---|---|---|---|
page_viewed | |||
signup_completed | |||
checkout_completed Missing on Android | |||
product_viewed | |||
cart_abandoned Not found in any platform | |||
referral_shared Missing on Android + Web |
See exactly where your coverage gaps are
Coverage reports break down implementation status per event and per platform. You can see at a glance which events are fully covered, which are partially implemented, and which are missing entirely.
Reports are generated on every scan and available in the Ordaze dashboard, as JSON output, or as a GitHub Actions check on your PR.
No more guessing. No more asking engineers “did you implement that event?”. The report tells you.
Prevent coverage regressions in CI
Add ordaze scan to your CI pipeline with a minimum coverage threshold. If a PR removes an event implementation or introduces an error, the check fails and the merge is blocked.
Treat analytics coverage like test coverage: enforce it automatically on every PR so it never silently degrades between releases.
CI setup guidename: Analytics Coverage
on: [pull_request]
jobs:
analytics:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Scan analytics coverage
run: npx ordaze scan \
--workspace my-workspace \
--min-coverage 85 \
--fail-on-broken-events
env:
ORDAZE_API_KEY: ${{ secrets.ORDAZE_KEY }}
# ✗ Fails build if coverage < 85%
# ✗ Fails build if broken events found