Avo Inspector SDKs

Avo Inspector SDKs

Avo Inspector analyzes the analytics events sent from your app, without collecting the actual data (not yet another tool to add to your privacy policy). Based on that analysis Avo automatically builds a single source of truth tracking plan, covering all your products and platforms, giving you a complete overview of which is tracking what, and which is not.

Avo Inspector SDK is designed to be small and easy to include in any project.

Platform documentation

Usage overview

Find in Avo Inspector overview guide.


You can enable or disable logs with a method on the AvoInspector class (the interface may vary depending on platform, see platform specific documentation above)


The printed logs are the following, in the chronological order:

  • Avo Inspector: supplied event ...: when an event is provided to Avo Inspector
  • Avo Inspector: extracting schema from ...: right before extraction of the schema from a supplied event
  • Avo Inspector: saved event ...: when the event schema is saved locally to send it to Avo servers later, due to batching
  • Avo Inspector: events ...: before sending the data it prints the list of event schemas that are going to be sent
  • Avo Inspector: batch sent successfully.: when the event schemas are successfully sent
When setting up Inspector make sure that you see the Avo Inspector: batch sent successfully log. That means that your setup is most likely correct.


In order to ensure our SDK doesn't have a large impact on performance or battery life it supports event schemas batching. In production, default values are 30 schemas per batch and smaller batches are sent if more than 30 seconds pass between uploads. In development batching is disabled by default. You can change the values using AvoInspector.setBatchSize(newBatchSize: Int) and AvoInspector.setBatchFlushSeconds(newBatchFlushSeconds: Int) class methods to fine tune the library performance.

App versions

When initializing Inspector SDK you'll be prompted to provide the current app version. Providing correct app version is not required, but doing so significantly improves Inspector issue reporting. By providing app version Inspector is able to tell in what version an issue was first seen, and in what version the issue was fixed. Versions also allow Inspector to report more accurately on the implementation status of your events, by focusing on the implementation status in your latest app version for every source.

We recommend using semantic versioning (e.g. "1.0.0") or other types of numeric versioning (e.g. build number) which get incremented on every release.

Examples of great app versions, incremented with every feature release:

  • 4.11.2
  • 1.110.0
  • 1452
  • 42

Examples of bad app versions:

  • 0f5d04ddbb401971b2f9c7f6186f58161692c3d8
  • prod.commit.b401971

Don't have versioning for your app in place? Reach out to us and we'll help you set up versioning in your app.

Easy setup with Segment SDK on Android and iOS

If you are using Segment Analytics for tracking integrating Avo Inspector SDK is even easier.

We provide a code snippet to be used as middleware component that you supply to Segment during initialization. That will allow Avo to analyze schemas of all event tracked by Segment.

Check platform docs for more information and actual code snippets.