Aptabase is an Open Source alternative to Google Firebase Analytics for C++ Apps
Use the C++ SDK for Aptabase to instrument your app. You're in total control of what events to track.
Here's an example 👇
aptabase.RecordEvent("play_music", {
{"name", "Here comes the sun"}
}); Full install and setup steps in the quickstart below .
That's it! You'll now see the data on your dashboard as the events come through from your app.
Use Cases
You can't improve what you don't measure. Aptabase helps you get valuable insights from your C++ Apps in a privacy-friendly manner.
Are you aware of the features in your app that users engage with most frequently? What configurations that majority of your users prefer? Gaining insights into these areas allows you to make well-informed decisions on future focus points for enhancing your C++ app's user experience.
Native C++ applications may lag in user updates due to the need for manual intervention during the update process. However, with Aptabase, you can swiftly determine the adoption rate of your app's newest version. This vital information aids you in making strategic decisions regarding the appropriate timing to phase out older versions.
Aptabase efficiently gathers data such as the names of operating systems such as Windows, macOS and various Linux distributions, and their respective versions. This valuable insight enables you to concentrate on crafting enhanced user experiences tailored to the most widely used OS and versions.
Quickstart
Install the C++ SDK, initialize it with your App Key and track your first
event. Get the App Key from the dashboard's Instructions
menu — keys look like A-EU-*, A-US-*.
Package: CMake subdirectory
add_subdirectory(path/to/aptabase-cpp) Choose a networking backend:
# Option A: cpp-httplib
set(CMAKE_APTABASE_USE_HTTPLIB ON)
add_subdirectory(path/to/aptabase-cpp)
# Option B: Boost.Asio
set(CMAKE_APTABASE_USE_BOOST ON)
add_subdirectory(path/to/aptabase-cpp) #include <aptabase/analytics.hpp>
#include <aptabase/net/httplib.hpp>
int main() {
Aptabase::Analytics aptabase(
std::make_unique<Aptabase::HttplibHttpClient>(),
"<YOUR_APP_KEY>",
"https://your.aptabase.url",
true // is_debug
);
aptabase.StartSession();
aptabase.RecordEvent("app_started");
aptabase.RecordEvent("screen_view", {{"name", "Settings"}});
aptabase.EndSession();
} Event attributes support std::string, float and double.
Privacy front and center
In the realms of user tracking and privacy, Aptabase employs a unique strategy to secure the privacy of your users.
Free up to 20,000 events/month. Paid plans from $10/month for 200,000 events up to $450/month for 50,000,000 events. No overage fees.