<!--
{
  "availability" : [
    "visionOS: 2.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "ARKit",
  "identifier" : "/documentation/ARKit/ObjectTrackingProvider",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "ARKit"
    ],
    "preciseIdentifier" : "s:5ARKit22ObjectTrackingProviderC"
  },
  "title" : "ObjectTrackingProvider"
}
-->

# ObjectTrackingProvider

A source of real-time position of reference objects in a person’s environment.

```
final class ObjectTrackingProvider
```

## Overview

Use this class to configure ARKIt to track reference objects in a person’s environment and receive a stream of updates that contains [`ObjectAnchor`](/documentation/ARKit/ObjectAnchor) structures that describe them.

## Topics

### Creating an object-tracking provider

[`init(referenceObjects:trackingConfiguration:)`](/documentation/ARKit/ObjectTrackingProvider/init(referenceObjects:trackingConfiguration:))

Creates an object-tracking provider.

### Checking availability

[`isSupported`](/documentation/ARKit/ObjectTrackingProvider/isSupported)

A Boolean value that indicates whether a device supports the object-tracking provider.

[`requiredAuthorizations`](/documentation/ARKit/ObjectTrackingProvider/requiredAuthorizations)

An array of authorization types the object-tracking provider requires.

### Configuring object-tracking

[`trackingConfiguration`](/documentation/ARKit/ObjectTrackingProvider/trackingConfiguration-swift.property)

Returns the current parameters that are being used to configure object tracking.

[`ObjectTrackingProvider.TrackingConfiguration`](/documentation/ARKit/ObjectTrackingProvider/TrackingConfiguration-swift.struct)

Parameters for changing object-tracking behavior.

### Inspecting an object-tracking provider

[`state`](/documentation/ARKit/ObjectTrackingProvider/state)

The state of an object-tracking provider.

[`allAnchors`](/documentation/ARKit/ObjectTrackingProvider/allAnchors)

An array of all the object anchors the object-tracking provider is tracking.

[`anchorUpdates`](/documentation/ARKit/ObjectTrackingProvider/anchorUpdates)

An asynchronous sequence of anchors the framework updates.

[`ObjectTrackingProvider.Error`](/documentation/ARKit/ObjectTrackingProvider/Error)

Values that represent an object-tracking error.

[`description`](/documentation/ARKit/ObjectTrackingProvider/description)

A textual representation of this object tracking provider.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)