Track events. See funnels. Measure retention. Ship.
Drop in an SDK, track events, and see funnels and retention without extra setup.
Your data stays yours. No ads. No tracking games.
10% overall conversion rate β 2.3% vs last week
Built for simplicity. Designed for developers.
Instrument your app with a lightweight SDK. Track events without complex setup or vendor-specific ceremony.
Watch events flow in as they happen. Dashboards update as data is aggregated.
Build custom funnels to track any conversion flow. Finally answer "why aren't they converting?"
Cohort analysis that shows you who's sticking around and who ghosted β and why.
Dig into your data without writing queries. Filter, group, and slice events however you want.
Your data stays yours. No selling, no sharing. We're not in the ad business.
Type a question, get a chart. No query language, no complex filters, no training required.
Total signups
2,847
+18% from last month
AI Analysis
Signups are up 18% this month. The spike on Dec 18-20 correlates with your Product Hunt launch. iOS users convert 2.3x better than web.
Because we believe in honest marketing.
We're good at what we do. We just don't oversell it.
No complex setup. No configuration headaches. Just grab your API key and start sending events.
curl -X POST https://mostlygoodmetrics.com/v1/events \
-H "Authorization: Bearer your_api_key" \
-H "Content-Type: application/json" \
-d '{
"name": "button_clicked",
"user_id": "user_123",
"properties": {
"button": "signup",
"page": "/pricing"
}
}'
import MostlyGoodMetrics
// Initialize once at app startup
MgmCore.configure(
apiKey: "your_api_key"
)
// Track events anywhere
MgmCore.track(
"button_clicked",
properties: [
"button": "signup",
"page": "/pricing"
]
)
import com.mostlygoodmetrics.sdk.MostlyGoodMetrics
// Initialize in your Application class
MgmCore.configure(
context = this,
apiKey = "your_api_key"
)
// Track events anywhere
MgmCore.track(
"button_clicked",
mapOf(
"button" to "signup",
"page" to "/pricing"
)
)
import MostlyGoodMetrics from '@mostly-good-metrics/react-native'
// Initialize once at app startup
MgmCore.configure('your_api_key')
// Identify user (optional)
MgmCore.identify('user_123')
// Track events anywhere
MgmCore.track('button_clicked', {
button: 'signup',
page: '/pricing'
})
import 'package:mostly_good_metrics_flutter/mostly_good_metrics_flutter.dart';
// Initialize once at app startup
await MgmCore.configure(
MGMConfiguration(apiKey: 'your_api_key')
);
// Identify user (optional)
MgmCore.identify('user_123');
// Track events anywhere
MgmCore.track('button_clicked', properties: {
'button': 'signup',
'page': '/pricing'
});
import { MostlyGoodMetrics } from '@mostly-good-metrics/javascript'
// Initialize once at app startup
MgmCore.configure({
apiKey: 'your_api_key'
})
// Track events anywhere
MgmCore.track('button_clicked', {
button: 'signup',
page: '/pricing'
})
Before MostlyGoodMetrics, our onboarding optimization was mostly guesswork. With clear, trustworthy metrics, we pinpointed friction in our onboarding flow and made targeted improvementsβresulting in a 50% reduction in onboarding drop-off. It paid for itself almost immediately.
Cody
@codykernsFirst 100 subscribers keep these prices for life. No increases, ever... for them.
For side projects
$0 /month
For growing apps
Lifetime beta pricing - save $3/mo forever
For serious apps
Lifetime beta pricing - save $20/mo forever
Drop-in SDKs that just work. Or use our simple API directly.
Join developers who've stopped overthinking their analytics.
No credit card required. No 14-day trial anxiety. Just sign up.
Get started (it's free)