Oddlytics
Oddlytics is a small, self-hosted event analytics system for iOS apps. A Swift package sends events from your app to an API that you deploy to your own Cloudflare account, and a web dashboard shows what people do in your apps. It is meant for developers who want simple event counts without a third-party analytics service.
Highlights
- Three parts, all yours. A Swift client package, a Cloudflare Worker API with a D1 (SQLite) database, and a Next.js dashboard. See Installation.
- One line per event.
Analytics.track("button_tapped"), with optional string metadata and a group name. See Swift SDK. - Batched sending. Events are queued in memory and sent in batches, and failed batches are retried. See Swift SDK.
- Dashboard. Totals and trends across apps, a page per app with a 14-day chart, a daily active users heatmap and every event by frequency, plus a per-user activity log. See Dashboard.
- Event groups and display names. Group related events into their own dashboard section, and rename events without changing your app. See Dashboard.
- Delete data from the dashboard. Remove one event, everything for one user, or everything for one app. See Privacy & Data.
- Plain HTTP API. Anything that can send JSON can record events. See API Reference.
Get Oddlytics
Clone the repository from github.com/OddOmens/Oddlytics, deploy the Worker and dashboard to your Cloudflare account, then add the Swift package to your app. Installation walks through every step.
Product Details
| Platforms | Swift package: iOS 15 or later, macOS 12 or later. API: Cloudflare Workers and D1. Dashboard: any modern browser |
| Requirements | A Cloudflare account (the free tier is enough for small apps), Node.js 18 or later, Xcode with Swift 5.9 or later |
| Price | Free |
| Current Version | 1.0.2 (Swift package) |
| Source | github.com/OddOmens/Oddlytics |
| Support | support@oddomens.com |