[navigation]
TL;DR:
- Banuba Face AR SDK is the pick for camera-first AR on Android and iOS: face effects, virtual try-on, beautification and background segmentation, processed on the device.
- ARKit is the strongest choice for iOS-first world-tracking AR, and on LiDAR devices it builds a polygonal mesh of the room.
- ARCore is the go-to option for Android-first AR apps, and its Geospatial API anchors content anywhere Google Street View has coverage.
- Unity AR Foundation gives one codebase across ARKit, ARCore, visionOS and Meta Quest, but it implements no AR features itself; each platform needs its provider plug-in.
- Vuforia remains relevant mainly for enterprise and target-based AR, and publishing an app that uses Model Targets or Area Targets needs a paid Premium or Enterprise plan.
- EasyAR Sense and Niantic Spatial SDK cover SLAM and location-based AR outside the Apple and Google SDKs.
- Google MediaPipe is the free, Apache 2.0 option when you only need face or hand landmarks and will build the rendering yourself.
- Wikitude, Meta Spark AR and the Kudan mobile AR SDK are no longer options for a new mobile app, and Niantic's Lightship ARDK 3.x only gets critical fixes until 28 February 2027.
What is an AR SDK?
An AR SDK (augmented reality software development kit) is a set of libraries, APIs, and tools that helps developers build AR experiences such as:
-
Real-time tracking and scene understanding
-
Face AR and camera effects
-
Image/object recognition and tracking
-
Occlusion, segmentation, and background effects
-
3D model rendering and compositing
-
Cross-platform development (Android and iOS)
Not all AR SDKs are built for the same job. Some function as an AR beautification SDK or face filter SDK, specializing in facial effects, virtual makeup, beauty enhancement, and background segmentation, others focus on world tracking features such as plane detection, anchors, and depth sensing, and others focus on cross-platform development workflows.
How we compared these AR SDKs
Four things decide the choice, and each entry below reports them from the vendor's own site.
- Tracking type. Face, world (SLAM), image and object, and location-based tracking come from different SDKs, and the tracking your product needs rules most of the list out.
- Platform reach. Native Android and iOS, a Unity or cross-platform layer, and whether the same features exist on both platforms.
- Is it still maintained? Several SDKs that older lists recommend are shut down or frozen, so every entry states its status in September 2026.
- Commercial model. Free platform SDKs, open-source libraries and commercial licenses carry different costs and different support.
The best AR SDKs and frameworks for Android and iOS (ranked)
1. Banuba Face AR SDK (best for camera-first face AR on Android and iOS)

Best for:
- Face AR, virtual try-on, real-time camera effects
- Background segmentation and replacement
- On-device processing and privacy-first use cases
- Teams that want production-ready AR without building a full camera AR pipeline from scratch
Why it leads for camera-first AR: Most real AR products in consumer apps are camera-first. They need robust face tracking, segmentation, realistic overlays, consistent performance across device tiers, and a predictable integration experience. Banuba Face AR SDK is built specifically for that production reality.
What it covers:
- One AR SDK for Android and iOS that also runs on Web, Windows, macOS, Unity, Flutter and React Native
- iOS 13+ and Android 8.0+ (API level 26) with OpenGL ES 3.0+, at min 30 FPS
- 1,000+ effects in the Banuba asset store, plus Banuba Studio for making custom effects
- Offline mode, and an AR cloud that stores effects to decrease app size
- A 14-day free trial with no card required
If your roadmap includes camera-first AR, explore Banuba's camera SDK for building real-time AR camera experiences across platforms. Beyond native mobile, Banuba also offers a web-based AR SDK that brings the same high-performance face tracking and effects to browser environments. For teams that also need post-capture functionality, Banuba's video editing development kit provides a ready-made suite of trimming, effects, and rendering tools that integrate alongside the AR pipeline without requiring a build-from-scratch approach.
Where it is not the right tool: Banuba Face AR SDK is not designed for world-scale plane mapping or spatial anchors, so for placing objects in a room, use ARKit or ARCore below. When an effect drifts, rotates or changes color on one phone only, the cause often sits in the app's own camera code, and this walkthrough of the four frame stages between sensor and screen shows how to find the stage that breaks it. For measured results from our own device tests, see the hands-on AR SDK test results.
2. ARKit (best for iOS-first world-tracking AR)
Best for:
- iOS and iPadOS AR experiences with deep Apple ecosystem integration
- Apps that rely on Apple's device capabilities (including LiDAR-supported workflows on compatible devices)
Core strengths:
- Stable world tracking for iOS
- Scene understanding (planes, environment mapping)
- Scene reconstruction: with the LiDAR Scanner, ARKit builds a polygonal mesh that estimates the shape of the physical environment
- Face tracking with the front camera on any device with the Apple Neural Engine since iOS 14, not only on TrueDepth devices
- Light estimation to improve realism
- Support for Apple graphics stacks and 3D workflows, including RealityKit
When to choose ARKit: Choose ARKit when iOS is the primary platform, you want the lowest abstraction overhead, and you want tight integration with the Apple ecosystem.
3. ARCore (best for Android-first world-tracking AR)
Best for:
- Android AR experiences that require environmental understanding and stable motion tracking
- Products that need broad Android device reach
Core strengths:
- Motion tracking for placing and stabilizing virtual content
- Scene understanding (plane detection)
- Light estimation for more realistic rendering
- Depth and occlusion workflows (device dependent)
- Geospatial API that anchors content anywhere Google Street View has coverage
Requirements and status: ARCore on Android needs a certified device that shipped with the Google Play Store and runs Android 7.0 or later. Cloud Anchors, Augmented Faces and the Geospatial API also work on ARKit-compatible iPhones running iOS 13 or later. The Android SDK is actively maintained: version 1.56.0 shipped on 4 September 2026.
When to choose ARCore: Choose ARCore when Android is your priority platform and you are building world-tracking AR, not primarily camera effects.
4. Unity AR Foundation (best cross-platform workflow for world-tracking AR)
Best for:
- One cross-platform workflow across iOS and Android
- Teams shipping AR experiences with a single codebase using Unity
Core strengths:
- Cross-platform APIs that abstract ARKit and ARCore capabilities
- Faster iteration for teams already using Unity
- A unified development workflow for asset pipelines and interactions
- Official provider plug-ins for Google ARCore, Apple ARKit, Apple visionOS, Meta Quest (Unity OpenXR: Meta) and Android XR in the current 6.6.2 release
Where it fits: Unity AR Foundation is the practical choice when you want a single AR development workflow and can accept platform differences that come from relying on the ARKit/ARCore provider layers underneath. AR Foundation contains interfaces for AR features but does not implement any features itself, so every target platform needs its provider plug-in. Unity Pro is required for businesses with over $200K in funding or annual revenue and costs $2,310 per seat per year in 2026. Our comparison of AR frameworks for mobile and web covers the engine-level choices in more depth.
5. Vuforia (best for target-based AR and enterprise recognition workflows)
Best for:
- Image tracking, object recognition, and target-based AR experiences
- Enterprise use cases (training, field service, industrial overlays) where recognition robustness is key
Core strengths:
- Image tracking and recognition workflows
- Target-based AR scenarios that do not depend on full world mapping
- Model Targets that track objects from their 3D CAD data, and Area Targets built from a 3D scan of an indoor space
Requirements and pricing: current Vuforia Engine releases need Android 10+ and iOS 16+. The Basic plan is free, Premium and Enterprise are priced on request, and an app that uses Model Targets or Area Targets needs a Premium or Enterprise plan (Vuforia Engine pricing).
When to choose Vuforia: Choose Vuforia when recognition and target workflows are the main product requirement (not camera filters or world mapping).
6. EasyAR Sense (best for SLAM and image tracking outside the platform SDKs)
Best for:
- World and image tracking apps that need one engine across Android, iOS and Unity
- Teams that also ship to WeChat, Alipay or UnionPay mini-programs, or to headsets such as Apple Vision Pro, Pico, Rokid and Xreal
Core strengths:
- A cross-platform AR engine with SLAM and image tracking, made by VisionStar Information Technology (Shanghai)
- An independent SDK that does not depend on Unity
- Personal edition free for non-commercial work, and a Professional edition at $39 per month for commercial apps (EasyAR pricing)
When to choose EasyAR Sense: Choose EasyAR Sense when you need world or image tracking from one vendor across native mobile, Unity and mini-programs, instead of maintaining separate ARKit and ARCore code.
7. Niantic Spatial SDK (best for location-based AR)
Best for:
- AR anchored to real places, using Niantic's visual positioning (VPS)
- Teams building in Unity, Swift or Kotlin
Core strengths:
- Localization that anchors experiences to the real world
- Documentation for Unity, Swift and Kotlin in the current 4.x release
- Scans, maps and API keys managed in Scaniverse
Status: Niantic Spatial SDK 4.x replaces Lightship ARDK. ARDK 3.17 is the last full 3.x release, Shared AR stopped working on 1 May 2026, and Niantic provides critical bug and security fixes only through 28 February 2027 (ARDK 3.17 notice). For commercial rights, including resale, you must be on a Pro plan or Enterprise.
When to choose Niantic Spatial SDK: Choose it when the AR experience has to sit at a specific real-world location, and you are starting fresh on 4.x rather than extending an ARDK 3.x app.
8. Google MediaPipe (best free option for face and hand landmarks)
Best for:
- Prototypes and custom pipelines that need face or hand landmarks on the device
- Teams ready to build rendering, effects and content tooling themselves
Core strengths:
- Face Landmarker estimates 478 3-dimensional face landmarks and facial expressions
- Hand Landmarker locates key points of hands so you can render visual effects on them
- Guides for Android, iOS, Web and Python
- Open source under the Apache License 2.0
Limitations: MediaPipe is a machine learning toolkit, not a finished AR SDK. Google publishes no pricing page and no support SLA for it, and there is no effects catalogue or rendering engine to license.
When to choose MediaPipe: Choose MediaPipe when you only need landmarks and have the engineering time to turn them into a product feature.
9. DeepAR (best low-cost start for simple face filters)
Best for:
- Small apps and prototypes that need face filters and background effects
- Teams that want public, usage-based pricing from day one
Core strengths:
- Integrates on Web, iOS and Android, with real-time tracking and rendering at 30fps
- Documented integrations with Amazon Interactive Video Service (AWS IVS), Agora and Vonage
- DeepAR Studio is free to use, and effects created in Studio are usable free of charge
Pricing: DeepAR SDK is free for testing and development with a watermark, then priced by Monthly Active Users, from $25 per month for up to 1,000 MAU to $1,000 per month for up to 100,000 MAU (DeepAR pricing).
When to choose DeepAR: Choose DeepAR for a small, filter-first app where predictable entry pricing matters more than depth of beauty or try-on features. Our Banuba vs DeepAR side-by-side test shows where the two differ in practice.
AR SDKs to avoid for new mobile projects in 2026
Older "best AR SDK" lists still recommend products that you can no longer build on:
- Wikitude. Wikitude, a Qualcomm company, shut down all its services on 21 September 2024: there are no more updates, and Wikitude Studio, Cloud and Studio API have been fully disabled.
- Meta Spark AR. AR effects built by third parties are no longer available in Meta's apps from 14 January 2025.
- Kudan AR SDK. Kudan appeared in the previous version of this list. Its own site now sells SLAM for robotics and large-scale AR projects, and it no longer offers the mobile AR SDK.
- Niantic Lightship ARDK 3.x. It works until 28 February 2027 with critical fixes only; new work belongs on Niantic Spatial SDK 4.x.
Key AR features explained (and why they matter)
Motion tracking
Tracks device movement in 3D space so virtual objects remain stable as the user moves. This is foundational for world-tracking AR.
Scene understanding
Detects planes and surfaces (horizontal and vertical) so your app can place objects realistically and anchor content in a room.
Light estimation
Estimates lighting conditions so 3D assets match the real-world scene, improving realism and reducing the “fake overlay” look.
Occlusion
Allows real objects (or people) to appear in front of virtual objects when appropriate, which is critical for believable AR.
Image tracking
Recognizes and tracks images in the real world (posters, packaging, manuals). This is important for retail and enterprise target-based AR.
Face tracking
Finds a face in the camera feed and follows its position and expressions, so masks, makeup and try-on stay attached as the head turns. ARKit, ARCore Augmented Faces, MediaPipe and Banuba all offer it, at very different depths of ready-made features.
Marker-based vs markerless tracking
- Marker-based AR uses a defined marker to anchor experiences.
- Markerless AR relies on sensors and environment understanding.
AR SDK Comparison table
|
AR SDK / Framework
|
Platforms
|
Best For
|
Core Strengths
|
Limitations
|
|
Banuba Face AR SDK
|
iOS, Android, Web, Windows, macOS, Unity, Flutter, React Native
|
Camera-first AR (face AR, virtual try-on, real-time effects)
|
Production-ready face tracking, segmentation, background effects, on-device processing, cross-platform consistency
|
Not designed for world-scale plane mapping or spatial anchors
|
|
ARKit
|
iOS, iPadOS
|
iOS-first world-tracking AR
|
High-precision motion tracking, scene understanding, light estimation, LiDAR support, native Apple APIs
|
Apple-only, no Android support
|
|
ARCore
|
Android (limited iOS support)
|
Android-first world-tracking & geospatial AR
|
Motion tracking, plane detection, depth & occlusion, location-based AR
|
Feature availability varies by device
|
|
Unity AR Foundation
|
iOS, Android, visionOS, Meta Quest, Android XR
|
Cross-platform world-tracking AR
|
Single codebase, abstracts ARKit & ARCore, strong Unity ecosystem
|
Platform differences still apply; extra abstraction layer
|
|
Vuforia
|
iOS, Android, Unity
|
Target-based & enterprise AR
|
Image/object recognition, area targets, industrial workflows
|
Model and Area Targets need a paid plan; less suited for camera-first consumer AR
|
|
EasyAR Sense
|
Android, iOS, Unity, mini-programs, headsets
|
SLAM & image tracking outside the platform SDKs
|
SLAM, image tracking, no Unity dependency
|
Commercial apps need a paid edition
|
|
Niantic Spatial SDK
|
Unity, Swift (iOS), Kotlin (Android)
|
Location-based AR
|
Visual positioning, real-world localization, Scaniverse
|
ARDK 3.x apps must migrate to 4.x
|
|
Google MediaPipe
|
Android, iOS, Web, Python
|
Face & hand landmarks for custom pipelines
|
478 3D face landmarks, hand key points, Apache 2.0
|
No rendering engine, effects catalogue or support SLA
|
|
DeepAR
|
iOS, Android, Web, macOS
|
Simple face filters on a small budget
|
Public MAU pricing, free DeepAR Studio
|
The free license carries a watermark
|
How to read this table
- If your app starts with the camera (filters, try-on, effects), Banuba Face AR SDK is the most direct and scalable choice.
- If your app starts with the world (planes, anchors, rooms), ARKit and ARCore are the foundations.
- If you need one workflow for both platforms, Unity AR Foundation sits on top of ARKit and ARCore.
- If recognition of images or physical objects is the core problem, Vuforia is still relevant.
- If the experience is tied to a real-world place, look at ARCore's Geospatial API or Niantic Spatial SDK.
- If you only need landmarks for your own pipeline, MediaPipe is the free starting point.
Desktop and mobile parity
Most SDKs on this list are built for phones and tablets, as the comparison table above shows. Desktop is a different requirement: a video call, a live stream or a webcam app often runs on a laptop, and the same face effect has to work there as on the phone.
Banuba Face AR SDK is a good example of cross-platform face AR that includes desktop. It ships on iOS, Android, Web, Windows, macOS, Unity, Flutter and React Native. The same goes for Banuba's video conferencing SDK, which is made to integrate with web, mobile and desktop applications.
- Windows and macOS. Windows 8.1 and up and macOS 10.13 and up, with OpenGL 4.3 or later (4.1 on macOS). The desktop API is C++, and macOS also takes Swift and Objective-C.
- Web. Any browser with WebGL 2.0 or higher, including desktop Chrome, Firefox and Safari.
- Mobile. iOS 13.0 and up and Android 8.0 (API level 26) and up, with OpenGL ES 3.0 or later.
- Unity. Platform plugins for Android, iOS and desktop.
The full list is on the Banuba Face AR SDK system requirements page.
Feature parity is close, not total. In Banuba's SDK features matrix, every feature, from face tracking and segmentation to makeup, rendering and Hand AR, is marked as supported on iOS, Android, macOS, Windows and Web, with one exception: hair strands painting works on iOS and macOS only.
Limitations: our published face tracking figures are measured on Android and iOS devices, and the technical specification has no Windows or macOS performance tables. Also, Flutter and React Native video calls need a native plugin or module for each call provider, and we ship one for Agora.
In a nutshell, the same features ship to phones, laptops and browsers, but hands-on testing on each target remains essential.
Try Banuba Face AR SDK on mobile and desktop.

Which AR SDKs work for teams without computer vision expertise?
Every SDK on this list runs the tracking for you, so no team on it writes computer vision code from scratch. The real difference is how much you still build on top of the tracking data before a user sees a feature.
- Ready-made features and effects. Banuba Face AR SDK is a good example of this. It ships face effects, virtual try-on and segmentation as finished features, plus 1,000+ effects in the Banuba asset store. For a custom filter, you build the effect in any 3D graphical editor and convert it in Banuba Studio, so no computer vision work is needed, only the 3D asset. DeepAR follows the same idea at a smaller scale: DeepAR Studio is free to use, and effects created in Studio are usable free of charge.
- Recognition from your own 3D data. Vuforia Model Targets track objects from their 3D CAD data, and Area Targets are built from a 3D scan of an indoor space. You supply the model or the scan, and Vuforia does the recognition.
- Platform tracking, your own features. ARKit and ARCore handle motion tracking, plane detection and light estimation, and Unity AR Foundation puts both behind one API. You still build the 3D content, the interactions and the rendering, and AR Foundation implements no AR features itself, so each platform needs its provider plug-in.
- Landmarks only. Google MediaPipe is a machine learning toolkit, not a finished AR SDK. It estimates 478 3-dimensional face landmarks, and the rendering, effects and content tooling are yours to build.
Documentation matters as much as the feature list. Banuba, for example, publishes setup instructions for seven platforms, integration code samples on GitHub and an LLM-friendly documentation file for AI coding assistants, all listed in the FAQ below.
Limitations: a face AR SDK covers the face and the camera, not the room, so world tracking still starts with ARKit or ARCore.
In a nutshell, the less computer vision expertise your team has, the higher up this list it should start. And you get a 14-day free trial with no card required to check it on your own devices
How to choose the right AR SDK (decision framework)
Use this quick decision logic:
If your product is camera-first AR (face effects, try-on, segmentation, background replacement):
- Choose Banuba Face AR SDK.
If your product is world tracking AR (placing objects, anchors, plane detection):
- Use ARKit (iOS) and ARCore (Android).
If you want one workflow across both: Unity AR Foundation.
If your product is target-based recognition AR (image/object recognition, enterprise workflows):
- Evaluate Vuforia (and validate licensing and long-term fit).
If your product is location-based AR:
- Use ARCore's Geospatial API, or Niantic Spatial SDK if you build in Unity, Swift or Kotlin.
If you need SLAM and image tracking outside the Apple and Google SDKs:
If you only need face or hand landmarks and will build the rendering yourself:
- Start with Google MediaPipe.

References