---
title: "withObservationTracking(options:_:onChange:)"
framework: Observation
role: symbol
role_heading: Function
platforms: [iOS 27.0+, iPadOS 27.0+, Mac Catalyst 27.0+, macOS 27.0+, tvOS 27.0+, visionOS 27.0+, watchOS 27.0+]
path: "observation/withobservationtracking(options:_:onchange:)"
---

# withObservationTracking(options:_:onChange:)

## Declaration

```swift
func withObservationTracking<Result, Failure>(options: ObservationTracking.Options, _ apply: () throws(Failure) -> Result, onChange: @escaping @Sendable (borrowing ObservationTracking.Event) -> Void) throws(Failure) -> Result where Failure : Error, Result : ~Copyable
```
