ARKit Body Tracking not detecting ARBodyAnchor on iOS 26.x (FB15128723)

Since updating to iOS 26.0 (and confirmed on 26.1), ARBodyTrackingConfiguration no longer detects a valid ARBodyAnchor on devices with LiDAR (e.g., iPhone 15 Pro, iPhone 17 Pro Max). This issue reproduces in custom projects and Apple’s official sample “Capturing Body Motion in 3D”.

The AR session runs normally, but the delegate call:

func session(_ session: ARSession, didUpdate anchors: [ARAnchor])

never yields an ARBodyAnchor with valid joint transforms. All joints return nil when calling:

body.skeleton.modelTransform(for: jointName)

resulting in 0 valid joints per frame.

Environment • Device: iPhone 17 Pro Max (LiDAR) • iOS: 26.0 / 26.1 • Xcode: 16.0 (stable) • Framework: ARKit + RealityKit • Configuration used:

config.worldAlignment = .gravityAndHeading
config.isAutoFocusEnabled = true
config.environmentTexturing = .none
session.run(config)

Also tested: with and without frameSemantics = .bodyDetection

Expected Behavior

ARBodyAnchor should be detected and body.skeleton should contain ~89 valid joints with continuous updates.

ARKit Body Tracking not detecting ARBodyAnchor on iOS 26.x (FB15128723)
 
 
Q