Definition:
An SDK (software development kit) is a collection of tools, libraries, and components that developers use to build applications for a specific platform or operating system.
What is an SDK?
When a developer builds a mobile app, they rarely build everything from scratch. An SDK gives them a ready-made set of tools to work with, saving significant time and effort by providing the building blocks needed to add specific functionality to an app.
Think of it like a toolkit. Instead of crafting every component by hand, developers integrate an SDK and immediately gain access to the features and capabilities it provides, whether that's tracking installs, serving ads, measuring user behavior, or connecting to external data sources.
In mobile marketing specifically, SDKs are how apps talk to the platforms that power attribution, analytics, and monetization. When you integrate Tenjin's SDK into your app, for example, you unlock the ability to track installs, measure campaign performance, and access granular user data, all without building that infrastructure yourself.
What Does SDK Stand For?
SDK stands for software development kit. You will also sometimes see it written out in full as a software development kit SDK, though in practice the abbreviation is used almost universally across the industry.
A typical SDK packages together several components that developers need to build and integrate effectively:
- Compiler: Converts code into a format the platform can run
- Debugger: Helps developers find and fix errors in their code
- Libraries: Pre-written code that handles common functions so developers don't have to write them from scratch
- APIs: Interfaces that allow the app to communicate with external services
- Sample applications: Working examples that give developers a starting point
- Documentation: Guidance on how to implement and use everything correctly
Together these components give developers everything they need to get up and running quickly on a specific platform.
How Do SDKs Work?
An SDK is built for a specific platform or operating system. An iOS SDK is designed for Apple's ecosystem, an Android SDK is built for Google's, and so on. Developers integrate the SDK into their app during the build process, and from that point forward the app can access all of the functionality the SDK provides.
In the context of mobile marketing, this is how apps connect to:
- Attribution platforms like Tenjin, to track installs and campaign performance
- Ad networks, to serve and measure in-app advertising
- Analytics tools, to capture user behavior and engagement data
- Monetization platforms, to enable in-app purchases and ad revenue tracking
Each integration is typically a separate SDK. This is why mobile developers often talk about SDK bloat, the challenge of managing multiple SDKs simultaneously without negatively impacting app performance or load times.
SDKs on iOS and Android
The two dominant mobile platforms each have their own SDK ecosystem:
iOS SDK
Apple's iOS SDK gives developers the tools to build apps for iPhone and iPad. It includes access to Apple's frameworks, APIs, and hardware interfaces, and is required for any app distributed through the App Store.
Android SDK
Google's Android SDK provides the equivalent for Android devices. It includes the Android API libraries, a debugger, and an emulator for testing apps across different device configurations.
Most mobile marketing tools, including Tenjin, provide SDKs compatible with both platforms, so developers can integrate once per platform and maintain consistent tracking and measurement across their entire user base.
What Is the Difference Between an SDK and an API?
SDKs and APIs are closely related but they serve different purposes.
| SDK | API | |
| What it is | A full toolkit for building on a platform | An interface for software to communicate with other software |
| What it includes | Libraries, APIs, tools, documentation, samples | A defined set of rules for data exchange |
| Scope | Broad, covers the full development process | Narrow, focused on a specific connection or function |
| Relationship | SDKs usually include APIs | APIs can exist independently of an SDK |
A simple way to think about it: an API is a single door between two systems. An SDK is the entire building that contains many doors, along with the keys, blueprints, and instructions to use them all.
Why SDKs Matter in Mobile Marketing
For mobile marketers, SDKs are the foundation of measurement. Without an attribution SDK integrated into your app, you cannot reliably track where your users are coming from, how they behave after install, or how your campaigns are performing.
Tenjin's SDK is designed to be lightweight and straightforward to integrate, so developers can get up and running quickly without heavy engineering overhead. Once integrated, it unlocks the full suite of Tenjin's attribution, analytics, and reporting capabilities across both iOS and Android.