Checklist: how to add Google analytics to your program
SoftMeter is a software usage analytics library for Windows, MacOS and IOS that allows software developers to send "pageview", "event", "screenview" and "Exception" hits from their programs to their Google Analytics profile.
With SoftMeter, shareware authors can see the active installations of their programs in the same way they see the visits to their website.
The following checklist will guide you to add SoftMeter's application analytics to your application.
|A. Prerequisites (5 min)
|Read the SoftMeter license agreement. By implementing SoftMeter in your software you agree to these terms.
|B. Prepare the reporting platform to "listen" to your software (12 - 22 min)
|SoftMeter uses Google Analytics as the default reporting platform. Read here why.
You can also use Matomo/Piwik as the reporting platform for the usage statistics of your desktop software.
|Create a Google Analytics (GA) account if you do not already have one for your website monitoring.
|Google introduced a new type of property, the Google Analytics 4 (GA4) property. SoftMeter supports this type of property since version 2.
Read here how to create and configure a GA4 property to be used for SoftMeter.
|2023: GA4, the new type of properties require the use of an ApiSecret. The precompiled demo programs will soon be updated to parse the ApiSecret from the command line parameters. Until then, you should skip this step.
Download our demo application and the SoftMeter library. These are command-line utilities.
Use your new property ID to send test hits to the reporting view.
Use the Google Analytics real-time report to start.
|Success level 1 reached: You have a new GA4 property for your software, and you have sent test hits from SoftMeter. Now, you just need to send these hits from your own application.
Take a coffee break
|C. Implementation (2.5 - 5 hours)
|"Watch", "Star" or "Fork" our GitHub repository. If you do not have a GitHub account, you can create one for free.
|If you are implementing installation/uninstall statistics:
|For Inno setup, use our ready example: example files and blog article.
|For Installaware, use our all-in-one function aioSendEvent_stdcall.
|For other installation packages, see our Inno setup and Installaware examples to implement installation analytics in a similar way.
|If you are implementing runtime software analytics inside your software, see our examples.
You can start with a minimum of calling the sendScreenView() function on application launch.
For C++ Windows and/or Mac software: example files.
For Delphi/Pascal console software: example files.
For Delphi/Pascal GUI software: example files and blog article.
For IOS app software: example files.
|If you digitally sign your installation package or your software, code sign also the SoftMeter library.
|Run the installation package of your software to see the hits arriving at your GA4 reporting.
Adjust your code and textual parameters of SoftMeter according to your wishes.
|Add a paragraph in your EULA and a screen at the UI of your application to notify the users about the telemetry.
Download this sample telemetry consent EULA that you can use as a template to write your own.
If your users are also from the EU and the EEA, you must give them an opt-in/opt-out option, where the default is opt-out, in order to comply with the 2018 GDPR law about the protection of personal data.
|Success level 2: SoftMeter implemented. Please send us any comments you might have.
|D. Packaging, release and start monitoring the usage of your application (30 min)
|Include the SoftMeter library in your installation package.
|Check our GitHub space and our news for the latest version of SoftMeter.
If a new version exists, you just need to replace the SoftMeter DLL (or dylib on Mac) with the new file.
Note: Every time you publish a new release of your software, it is highly recommended to use the latest version of SoftMeter. Subscribing to the SoftMeter newsletter and alerts and "Watching" our GitHub repository can help achieve this with minimal effort.
|Do you normal quality checks and publish the new release.
|Success level 3: You are a hero. Modest or not, the truth is that you brought new information, of high value to your software development house.
You have implemented an advanced technology that allows you for the first time:
Take some screenshots or print-outs of your first reports, for your fellow developers and the management team.
|E. Post-launch tasks and graceful project completion (2 hours)
|At any time you can also build your own custom reports, or even take the data to Google data studio to perform an advanced analysis.
|If you only implemented Installation analytics, consider adding SoftMeter also in your application.
If you only implemented SoftMeter in your application, consider adding it also in your setup package.
|Consider purchasing a SoftMeter Pro license or making a donation to this project.
|Send us your feedback
|Success level 4: By using our library, and optionally buying the Pro edition, or donating to this project, you increased our development happiness.