Glossary term

Software Development Kit (SDK)

What is an SDK?

SDK stands for software development kit. It is a bundle of code libraries, tools, and documentation that lets a developer add a specific service or technology to their app without building it from scratch.

In mobile games, an SDK is most often how a studio connects its game to an outside platform. For example, integrating the Unity Ads SDK connects a game to Unity's ad network and its ad mediation tools, giving developers control over when, where, and how ads appear without writing that infrastructure themselves.

Platform-specific SDKs like the Android SDK and iOS SDK work the same way for their own ecosystems.

How does an SDK work?

Most SDKs bundle the same core pieces:

  • A library of pre-written code that handles the underlying functionality.
  • An API that defines how a developer's own code talks to that library.
  • Documentation covering how to use it.
  • Testing or debugging tools.

A developer imports the SDK into their project and calls its functions instead of building that functionality from scratch. The SDK handles the underlying communication with whatever service it connects to, whether that's an ad network, a payment processor, or an analytics platform, so the developer doesn't have to build and maintain that connection themselves.

Where are SDKs used in game development?

In game development, SDKs are how a studio adds functionality it doesn't want to build itself.

The Unity Ads SDK works this way, connecting a game to Unity's ad network and mediation tools with a single integration, and Unity's SDK integration guide walks through the setup for a Unity project step by step.

Uken Games described struggling with what they called an "SDK treadmill" from previous ad partners, custom integration work for every new SDK. Switching to Unity Ads cut that down to a single checkbox and a few lines of code.

Other common SDK categories in mobile games include analytics, attribution, and payment processing, each one letting a studio add a capability without building and maintaining it in-house.

SDK vs. API

SDK and API are often used interchangeably, but they're not the same thing.

What it is
SDK
The fuller toolkit built around a platform
API
The rules for how two pieces of software communicate
What it includes
SDK
Code libraries, documentation, and often testing tools, usually built around one or more APIs
API
A defined set of communication rules, no toolkit around it
How it's used
SDK
Installed by a developer to build with a platform
API
Called by code to exchange data or trigger functionality

Most SDKs include one or more APIs inside them, but an API on its own isn't an SDK.

What are the benefits of using SDKs?

  • Build faster: Pre-built code and tools mean a developer doesn't have to write and test the same integration from scratch.
  • Get support and documentation: Most SDKs ship with reference docs, sample code, and a maintained update path, not just raw code.
  • Stay consistent with the platform: an SDK is built and maintained by the platform it connects to, so it's more likely to keep working as that platform changes than a fully custom-built integration.

What are the challenges of using SDKs?

  • Adds a dependency: A project relying on an SDK depends on that provider keeping it maintained, secure, and compatible with future updates.
  • Can increase app size and load time: Bundling multiple SDKs adds to a game's overall file size and can slow performance if not managed carefully.
  • Version and compatibility risk: An SDK update, or an OS update it wasn't built for, can break functionality until the integration itself is updated.

Frequently asked questions (FAQ)

Are all SDKs free to use?

No. Some SDKs are free and open source, meaning the code is publicly available and can be modified. Others are closed source and require a license or account with the provider. Which one a developer uses usually comes down to what the platform behind the SDK offers, not a general rule.

How do I integrate an SDK into a Unity project?

The exact steps depend on the SDK, but integration usually means importing the SDK's package into a project, initializing it with a project-specific ID or key, and calling its functions where that functionality is needed. See SDK integration for the general process, and Unity's own SDK integration guide for a Unity Ads-specific walkthrough.

Related terms

Application Programming Interface (API)

An API, or Application Programming Interface is a set of rules that lets software components communicate with each other.

SDK Integration

SDK integration is the process of importing a library file, known as a software development kit, into your project in order to use that file’s functions.

Gametech

Game technology, or gametech, refers to dedicated solutions and services that are used throughout a game’s lifecycle and are built especially for the purpose of game development.