SDK
Beginner PronunciationEN/ˌɛs diː ˈkeɪ/
A software development kit, or SDK, is a ready-made code package that lets a developer send data to a service without handling the network and queueing details.
In analytics the SDK is the layer that holds user identity and session, queues events, sends them in batches and retries when the network drops. A separate build exists for each runtime: web, iOS and Android, and server-side languages. It differs from an API in that the API is the contract while the SDK is a ready implementation of it; calling the API directly is possible, but then queueing, retry and identity handling become the caller's own work.
FAQ
No. For an ordinary website the JavaScript snippet is enough and collects pageviews and basic interactions. A dedicated library becomes necessary when events must be sent from the server or behaviour must be recorded inside a mobile app.