Features · Measure

Mobile app analytics — Swift and Flutter SDKs, in the same panel as your site

Your iOS and Android apps next to your website: screens, events, signed-in users, plans and revenue, on the same pages and in the same Portfolio. Official, open-source SDKs for Swift and Flutter, with no dependencies and nothing that tracks the device.

A few lines

Configure once with the site id; screens, events, identify, plan and revenue are one call each. App opens are counted on their own.

Works offline

Events queue on the device and go out in batches of up to 50. Each carries how long ago it happened, measured on a clock that does not jump, so a day offline still lands at the right time.

No device identifier

No IDFA, no advertising id, no install id. A random value that changes every UTC day stands in for the visitor — the same rule as the website. The Swift package ships Apple's privacy manifest.

Reads as an app

The SDKs send their own user-agent, so the Audience pages and the Portfolio badges say iOS app or Android app rather than a browser.

The evidence

Swift

Vitrus.shared.configure(site: "SITE_ID")
Vitrus.shared.screen("Invoices")
Vitrus.shared.track("invoice_sent", ["items": 3])
Vitrus.shared.identify(user.id)   // hashed on the device, never sent raw
Vitrus.shared.plan("pro")

Flutter is the same shape: Vitrus.instance.configure(site: …), screen, track, identify, plan, revenue.

What this does not do

No crash reporting and no automatic screen tracking: you name the screens you want counted. Events older than a day when they finally get sent are dropped, not back-dated.

Documentation

More in measure

← All features