How it works
Tamda connects to your GitHub repo and your app's own event stream, and runs the full optimization loop from there. No analytics platform OAuth. No unauthenticated endpoints.
Grant Tamda access to your GitHub repo, and give your app a workspace ingest key so it can call Tamda's event endpoints directly.
There's no analytics platform to connect via OAuth. Tamda doesn't read Amplitude, Segment, PostHog, or Mixpanel schemas. Events flow server-to-server from your own app to Tamda's API, authenticated with a per-workspace key.
Connect your stack
Step 01 of 5
Once connected, Tamda monitors your key metrics continuously, surfacing drops, friction points, and untapped gains before your team notices.
Or start from a hypothesis you already have. Either way, Tamda generates a full optimization spec: the change to make, the metric to move, the guardrails to watch.
Tamda observes your metrics and surfaces opportunities
Step 02 of 5
Once a hypothesis is confirmed, Tamda connects to your GitHub repository and generates every file change needed: flag constants, component changes, and the fetch('/api/events') calls that report exposures and conversions back to Tamda.
It knows your codebase conventions: your flag naming pattern, your component structure, your SSR setup. The diff is production-ready.
// Generated by Tamda: reads your existing flag system
const variant = await getExistingFlag('mobile-payment-field-collapse', userId)
// Reports the exposure so Tamda can measure the outcome
await fetch('https://your-tamda-domain.com/api/events', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'x-pilot-ingest-key': process.env.PILOT_INGEST_KEY!,
},
body: JSON.stringify({
flagKey: 'mobile-payment-field-collapse',
variant,
userId,
eventName: 'exposure',
type: 'exposure',
}),
})When enough data has accumulated, Tamda runs the analysis directly from the exposure and conversion events your app has sent to /api/events. It performs statistical testing on the primary metric and checks every guardrail for regressions.
The output isn't a p-value to stare at. It's a decision: Ship, Iterate, or Kill, with plain-English reasoning and exactly what to do next.
Outcomes evaluated, not just reported
Step 04 of 5
Every result and learning is stored. Tamda builds a model of what moves your metrics, what doesn't, and what's never been tried, and starts the next optimization cycle automatically.
The longer Tamda runs, the more it knows about your product. Each cycle is faster and more targeted than the last.
Every outcome feeds the next cycle
Step 05 of 5
Connect your stack and Tamda starts observing in minutes.
Start your first cycle