Countly is a free, open source web & product analytics project written in JavaScript and released under a custom open-source licence. It has 5,904 GitHub stars, 981 forks and 15 open issues, and was last pushed 15 hours ago. On this registry it ranks #9 of 25 tracked projects in Web & Product Analytics, with 5 head-to-head comparisons available. It gained 2 stars over the last 6 tracked days.

What is Countly?

What it is

Countly is a privacy-first, AI-ready analytics and customer engagement platform that organizations deploy themselves rather than consume only as a hosted service. The server-side component lives in this repository and is written in JavaScript, sitting in the JavaScript and Node.js ecosystem alongside the client SDKs that ship separately for iOS, Android, React Native, Flutter, NodeJS, Unity, Java and JavaScript. The platform is built around the idea that customer data should stay under the operator's control: Countly runs on-premises or in a private cloud, and the project describes full data ownership, deployment flexibility and zero vendor lock-in as its defining traits. The topic list places it squarely in digital analytics, with explicit signals for GDPR, HIPAA and COPPA concerns.

The concrete problem it solves is the trade-off between product analytics and data governance. SaaS-only analytics tools keep the data and the infrastructure, which is awkward for organizations with compliance, security or residency obligations. Countly collects sessions, views, events, crashes and errors across mobile, web, desktop and connected devices, then lets the operator decide where that data lives and who can reach it. The write API accepts data from any source, so teams are not restricted to the SDKs, and the plugin architecture lets deployments extend or reshape behavior instead of waiting on a vendor roadmap.

Key capabilities

  • Session, view and event collection with reporting and customizable dashboards.
  • Crash and error reporting with SDK coverage for iOS, Android, React Native, Flutter, NodeJS, Unity, Java and JavaScript.
  • Rich push notifications for iOS and Android, plus in-app ratings with customizable widgets.
  • Remote configuration to change an application's logic, appearance and behavior without shipping an update.
  • Compliance Hub for consent collection and data subject request management, aligned with the GDPR, HIPAA and COPPA topics listed.
  • Data Manager for planning and managing events and event segmentations.
  • Read and write APIs, email reports, alerts, and hooks that forward data to external parties by email or webhook.

Who uses it and how

  • Product teams tracking user behavior across mobile, web, desktop and connected devices in one place.
  • Regulated organizations that need self-hosted or private-cloud deployment to satisfy compliance and security requirements.
  • Engineering teams using crash and error reporting to catch failures across several mobile and cross-platform stacks.
  • Growth and lifecycle teams running push notifications, in-app ratings and engagement flows from the same server.
  • Small teams and individuals running Countly Lite under the open-source non-commercial license for core analytics.
project readme (upstream, from github) — read inline

CI CodeQL Analysis

🔗 Quick links

🌟 What is Countly?

Countly is a privacy-first, AI-ready analytics and customer engagement platform built for organizations that require full data ownership and deployment flexibility.

Unlike traditional SaaS-only analytics tools, Countly can be deployed on-premises or in a private cloud, giving you complete control over your data, infrastructure, compliance, and security.

Teams use Countly to:

  • Understand user behavior across mobile, web, desktop, and connected devices
  • Optimize product and customer experiences in real time
  • Automate and personalize customer engagement across channels

With flexible data tracking, customizable dashboards, and a modular plugin-based architecture, Countly scales with your product while ensuring long-term autonomy and zero vendor lock-in.

Built for privacy. Designed for flexibility. Ready for AI-driven innovation.

🚀 Countly Plans

Countly Lite

  • Core analytics and essential features
  • Free to use under an open-source, non-commercial license
  • Self-hosted deployment
  • Ideal for individuals and small teams

Countly Enterprise

  • Full analytics and engagement suite
  • Advanced features, granular data access, SLA, and direct support
  • Available as self-hosted or managed/private cloud
  • Ideal for medium and large organizations with advanced compliance needs

Countly Flex

  • Fully managed SaaS experience with dedicated Countly servers
  • Region-based hosting selection
  • Enterprise-grade features included, with optional add-ons
  • Ideal for individuals and small-to-medium organizations wanting flexibility without infrastructure management

:pushpin: Note: Countly SDKs are identical across all editions.

For a detailed comparison of different editions please check here. To try the Countly Flex please visit this page.

📦 What is included in this repository?

This repository includes server-side part of Countly, with the following features:

  • Session, view and event collection and reporting
  • Crash/error reporting for iOS, Android, React Native, Flutter, NodeJS, Unity, Java and Javascript
  • Rich and interactive push notifications for iOS and Android
  • Remote configuration to adjust your app's logic, appearance, and behavior on the fly
  • In-app ratings with customizable widgets
  • Built in reports and customizable dashboards
  • Email reports and alerts
  • Hooks to send the data to external parties via email or webhooks
  • Data Manager to plan and manage events and event segmentations
  • Compliance Hub for consent collection and data subject request management
  • User, application and permission management
  • Read and write APIs
  • Plugin based architecture for easy customization

content

📈 What can Countly track?

Countly can collect and visualize data from mobile, web and desktop applications. Using the write-API you can send data into Countly from any source. For more information please check the below resources:

🛠️ Installing and upgrading Countly server

Countly installation script assumes it is running on a fresh Ubuntu/CentOS/RHEL Linux without any services listening on port 80 or 443 (which should also be open to incoming traffic), and takes care of every library and software required to be installed for Countly to run.

There are several ways to install Countly:

  1. The following command will download and install Countly on your Ubuntu or CentOS server.

    wget -qO- https://c.ly/install | bash

  2. For bash lovers, we provide a beautiful installation script (bin/countly.install.sh) in countly-server package which installs everything required to run Countly Server. For this, you need a stable release of this repository available here.

  3. Countly Lite also has Docker support - see our official Docker repository and installation instructions for Docker.

If you want to upgrade Countly from a previous version, please take a look at upgrading documentation.

🧩 API, extensibility and plugins

Countly has a well-defined API, that reads and writes data from/to the Countly backend. Countly dashboard is built using the read API, so it's possible to fetch any information you see on the dashboard using the API.

Countly is extensible using the plugin architecture. If you would like to modify any exiting feature by extending it or changing it, or if you would like to add completely new capabilities to Countly you can modify existing plugins or create new ones. We suggest you read this document if you would like to start with plugin development.

💚 Community

We have a new Discord Server (new as of Apr 2023) for our community 🎉 Please join us for any support requests, feature ideas, to showcase the application you are working on and for some occasional fun :)

🔒 Security

Security is very important to us. If you discover any issue regarding security, please disclose the information responsibly by sending an email to [email protected] and not by creating a GitHub issue.

🏗️ Built with

  • MongoDB — One of the most popular NoSQL databases
  • NodeJS — An open-source, cross-platform JavaScript runtime environment
  • Linux — What we all love using ;-)

Plus lots of open source libraries!

📚 Developer Documentation

🤝 How can I help you with your efforts?

  1. Fork this repo
  2. Create your feature branch (git checkout -b my-new-super-feature)
  3. Commit your changes (git commit -am 'Add some cool feature')
  4. Push to the branch (git push origin my-new-super-feature)
  5. Create a new pull request

Also, you are encouraged to read an extended contribution section on how to contribute to Countly.

👍 Badges

If you like Countly, why not use one of our badges and give a link back to us?

Countly - Product Analytics

Countly - Product Analytics

Countly - Product Analytics

Countly - Product Analytics

License

This project is licensed under *AGPL-3.0

readme truncated — read the full docs on github

Frequently asked questions

Is Countly free to use?

Countly is open source. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does Countly do?

Comprehensive analytics for data-driven decisions

What is Countly written in?

Countly is primarily written in JavaScript. Its source is publicly available at https://github.com/countly/countly-server, and it has 5,904 GitHub stars.