Install Countly SDK | Blue Frog Docs

Install Countly SDK

Platform-specific installation instructions for Countly analytics SDK.

SDK Installation

Countly provides native SDKs for all major platforms. Choose your platform below.

 


 

Web SDK

CDN Installation

<script type="text/javascript" src="https://cdn.count.ly/countly.min.js"></script>
<script>
  Countly.init({
    app_key: 'YOUR_APP_KEY',
    url: 'https://your-countly-server.com',
    session_update: 60,
    use_session_cookie: true
  });
  Countly.track_sessions();
  Countly.track_pageview();
</script>

npm Installation

npm install countly-sdk-web
import Countly from 'countly-sdk-web';

Countly.init({
  app_key: 'YOUR_APP_KEY',
  url: 'https://your-countly-server.com'
});

Countly.track_sessions();
Countly.track_pageview();

Async Loading

<script>
  var Countly = Countly || {};
  Countly.q = Countly.q || [];
  Countly.app_key = 'YOUR_APP_KEY';
  Countly.url = 'https://your-countly-server.com';

  Countly.q.push(['track_sessions']);
  Countly.q.push(['track_pageview']);

  (function() {
    var cly = document.createElement('script');
    cly.type = 'text/javascript';
    cly.async = true;
    cly.src = 'https://cdn.count.ly/countly.min.js';
    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(cly, s);
  })();
</script>

 


 

iOS SDK

CocoaPods

# Podfile
pod 'Countly'
pod install

Swift Package Manager

Add package: https://github.com/Countly/countly-sdk-ios

Implementation

import Countly

// In AppDelegate
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {

    let config = CountlyConfig()
    config.appKey = "YOUR_APP_KEY"
    config.host = "https://your-countly-server.com"
    config.features = [.sessions, .events, .crashReporting]

    Countly.sharedInstance().start(with: config)

    return true
}

 


 

Android SDK

Gradle

// build.gradle (app)
dependencies {
    implementation 'ly.count.android:sdk:23.8.3'
}

Implementation

import ly.count.android.sdk.Countly
import ly.count.android.sdk.CountlyConfig

class MyApplication : Application() {
    override fun onCreate() {
        super.onCreate()

        val config = CountlyConfig(
            this,
            "YOUR_APP_KEY",
            "https://your-countly-server.com"
        )
        config.setLoggingEnabled(true)
        config.enableCrashReporting()

        Countly.sharedInstance().init(config)
    }
}

Activity Lifecycle

// In each Activity
override fun onStart() {
    super.onStart()
    Countly.sharedInstance().onStart(this)
}

override fun onStop() {
    Countly.sharedInstance().onStop()
    super.onStop()
}

 


 

React Native

Installation

npm install countly-sdk-react-native-bridge
cd ios && pod install

Implementation

import Countly from 'countly-sdk-react-native-bridge';

// Initialize
Countly.init({
  appKey: 'YOUR_APP_KEY',
  serverUrl: 'https://your-countly-server.com',
  features: [
    Countly.Feature.SESSIONS,
    Countly.Feature.EVENTS,
    Countly.Feature.CRASHES
  ]
});

// Start session
Countly.beginSession();

 


 

Flutter

Installation

# pubspec.yaml
dependencies:
  countly_flutter: ^23.8.0

Implementation

import 'package:countly_flutter/countly_flutter.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();

  CountlyConfig config = CountlyConfig(
    'https://your-countly-server.com',
    'YOUR_APP_KEY'
  );
  config.setLoggingEnabled(true);

  await Countly.initWithConfig(config);
  await Countly.start();

  runApp(MyApp());
}

 


 

Node.js (Server-Side)

Installation

npm install countly-sdk-nodejs

Implementation

const Countly = require('countly-sdk-nodejs');

Countly.init({
  app_key: 'YOUR_APP_KEY',
  url: 'https://your-countly-server.com',
  debug: true
});

// Track events server-side
Countly.add_event({
  key: 'server_event',
  count: 1,
  segmentation: {
    source: 'api'
  }
});

 


 

Verification

After installation, verify the SDK is working:

  1. Initialize the SDK with debug mode enabled
  2. Check console/logs for initialization success
  3. Open Countly dashboard
  4. Navigate to Real-time or Live view
  5. Confirm session or event appears
// Test event
Countly.add_event({
  key: 'sdk_verification',
  count: 1
});
// SYS.FOOTER