Skip to content
Countly helps you get insights from your application. Available self-hosted or on private cloud.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Update Oct 1, 2018
api [common] add email for validation Apr 25, 2019
extend [push] Overridable email on auto errors Feb 11, 2019
frontend/express Merge pull request #890 from Cookiezaurs/master Apr 25, 2019
log Fix required empty directories May 28, 2012
plugins Merge pull request #890 from Cookiezaurs/master Apr 25, 2019
test [tests] fix logout test Feb 16, 2019
.codacy.yml Merge branch 'master' into next Aug 8, 2018
.dockerignore [docker] Adding more to dockerignore Aug 24, 2018
.editorconfig added a project editorconfig file Feb 15, 2019
.eslintignore [eslint] single config file and fixes Jan 16, 2019
.eslintrc.json [eslint] single config file and fixes Jan 16, 2019
.gitattributes Update .gitattributes Dec 3, 2014
.gitignore Merge branch 'next' into dynamic-widgets Jun 18, 2018
.travis.yml [travis] use mongodb 3.6.6 Jan 30, 2019
AGPLv3 better elaboration about licensing & add FAQ URL Feb 16, 2017 [frontend] fixed missing text for duration formatting Feb 21, 2019 Added instructions on using Vagrant Jan 10, 2018
Dockerfile docker: remove running migrations with startup, instead run it manually Jun 5, 2017
Dockerfile-core [docker] Adding nomongo option Sep 11, 2018
Gruntfile.js [overview-bars] created getTop() method. Jan 21, 2019
LICENSE remove year, add © symbol Mar 1, 2019 Update install on DO button Apr 25, 2019
Vagrantfile Fixes: #779, Modified Vagrantfile to provision development VM with 20… Jan 6, 2019
deploy-key.enc [travis] correct encrypt Apr 6, 2018
greenkeeper.json [devices] update device list Jan 8, 2019
inch.json [inch] documentation analysis Sep 27, 2018
jsdoc_conf.json Update jsdoc_conf.json Sep 6, 2018
lgtm.yml [lgtm] add lgtm Jan 9, 2019
nyc.config Adding nyc code coverage functionality Sep 5, 2018
package.json [version] 19.02.1 Feb 21, 2019

Countly Analytics

Build Status Codacy Badge Install Countly on DigitalOcean


WebsiteDocsTry demoSlack groupCommunity forum

Table of Contents

What is Countly?

Countly is an innovative, real-time, open source mobile & web analytics, rich push notifications and crash reporting platform powering more than 2500 web sites, 16000 mobile applications and several desktop applications as of 2019. It collects data from mobile, desktop, web apps including Apple Watch, TvOS and other internet-connected devices, and visualizes this information to analyze application usage and end-user behavior.

With the help of Javascript SDK, Countly is a web analytics platform with features on par with mobile SDKs. For more information about web analytics capabilities, see this link.

There are two parts of Countly: the server that collects and analyzes data, and an SDK (mobile, web or desktop) that sends this data. This repository includes Countly Community Edition (server side). For more information other versions (e.g Enterprise Edition), see comparison of different Countly editions

Click on the below image for a 1 minute video introduction to Countly (opens Youtube);

Countly Community Edition - Video

What is included?

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


What can Countly track?

Countly can collect and visualize data from iOS, Android, Windows Phone devices, desktop applications (Windows, Mac OS) and web applications. You can find a list of official and community supported Countly SDK libraries here. Each SDK has its own installation instructions.

Built with

  • MongoDB One of the most popular NoSQL databases
  • Node.js An open-source, cross-platform JavaScript runtime environment
  • Express.js Popular Node.js web application framework
  • Linux What we love using ;-)

Plus lots of open source libraries!


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

What makes Countly unique?

Countly is a privacy-focused and 360-degree analytics platform with several, unique values:

  • Real-time mobile analytics, web analytics and push notifications.
  • Your data, your rules - since you can install Countly on your own server, or let us do a private cloud deployment for you.
  • Configurable and extensible via open source plugins.
  • Modern and easy to use web based dashboard with a focus on user experience, which makes getting complex insights a breeze.
  • Tracking more than 2500 web sites and 16000 mobile applications.
  • Collecting more than 60 billion datapoints worlwide.

Differences between Community Edition & Enterprise Edition

  • Audience: Community Edition is suitable for individual developers and small development houses whereas Enterprise Edition is a better fit for companies that require more advanced analytics and marketing capabilities together with ongoing support.
  • Features: Enterprise Edition has additional features compared to Community Edition including automated push notifications, advanced segmentation, user profiles, in-app purchase analytics, retention, user flows, behavioral cohorts and custom dashboards.
  • Data granularity: Community Edition stores data (only) in an aggregated format, which reduces the required storage and makes reporting incredibly fast. Enterprise Edition takes advantage of the same format but also stores individual occurrences of data points which enables more advanced capabilities such as segmentation, funnels, user profiles and behavioral cohorts to name a few.
  • Working with raw data: Granular data, exclusive to Enterprise Edition, enables customers to take advantage of external BI tools or work directly with MongoDB to process and report data as they need.
  • Deployment: Running and maintaining a Community Edition instance requires technical know-how of several technologies including Linux, Nginx, Node.js and MongoDB. Whereas an Enterprise Edition hosted or on-premise subscription includes hands on support.
  • High availability and scalability: Countly engineers provide active support to Enterprise Edition customers for deployment planning and realization of this plan including replica set, sharding and a load balanced deployment setup on-premises or on popular cloud environments such as Google Cloud, AWS and Azure.
  • Service-level agreement: Enterprise Edition subscriptions include an SLA with response and issue resolution guarantees. Community Edition users can take advantage of the community forum or GitHub to post issues.

Installing and upgrading Countly server

Countly installation script assumes it is running on a fresh, decent 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- | bash

  2. If you have a Digital Ocean account, click here and install on Digital Ocean with a single click.

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

  4. Countly Community Edition 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 and Frontend

Countly has a well defined API, that reads and writes data from/to the Countly backend. Dashboard is built using the read API, so it's possible to fetch any information you see on the dashboard using the Countly API. If you are interested in creating new reports or visualisations in the UI, we recommend checking out the next section for creating plugins.

Extensibility and plugins

Countly is extensible using the plugin architecture. We suggest you read this document before creating your plugin. We provide support to companies with know-how in need to create their own plugins.

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

0 1 2 3 4 5 6 7

Greenkeeper badge


If you liked Countly, why not use one of our badges and give a link back to us, so others know about this wonderful platform?

Countly - Product Analytics

<a href="" rel="nofollow"><img style="width:145px;height:60px" src="" alt="Countly - Product Analytics" /></a>

Countly - Product Analytics

<a href="" rel="nofollow"><img style="width:145px;height:60px" src="" alt="Countly - Product Analytics" /></a>


You can’t perform that action at this time.