<!--
{
  "availability" : [
    "iOS: 10.0.0 - 27.0.0",
    "iPadOS: 10.0.0 - 27.0.0",
    "macCatalyst: 13.1.0 - 27.0.0",
    "tvOS: 10.0.0 - 27.0.0",
    "visionOS: 1.0.0 - 27.0.0"
  ],
  "documentType" : "symbol",
  "framework" : "QuartzCore",
  "identifier" : "/documentation/QuartzCore/CADisplayLink/preferredFramesPerSecond",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Property",
  "symbol" : {
    "kind" : "Instance Property",
    "modules" : [
      "Core Animation"
    ],
    "preciseIdentifier" : "c:objc(cs)CADisplayLink(py)preferredFramesPerSecond"
  },
  "title" : "preferredFramesPerSecond"
}
-->

# preferredFramesPerSecond

A frequency your app prefers for frame updates, affecting how often the system invokes your delegate’s callback.

```
var preferredFramesPerSecond: Int { get set }
```

## Discussion

The display link makes a best attempt to invoke your app’s callback at the frequency value you set to this property. However, the system also takes into account the device’s hardware capabilities and the other tasks your game or app is running.

> Important:
> Choose a frame rate that your app can consistently maintain.

In iOS 15 and later, the system can change the available range of frame rates because it factors in system policies and a person’s preferences. For example, Low Power Mode, critical thermal state, and accessibility settings can affect the system’s frame rate.

The system typically provides a consistent frame rate by choosing one that’s a factor of the display’s maximum refresh rate. For example, a display link could invoke your callback 60 times per second for a display with a refresh rate of 60 hertz. However, the display link could invoke your callback less frequently, such as 30, 20, or 15 times per second, by setting a smaller value.

> Note:
> The property defaults to `0`, which is equivalent to the display’s maximum refresh rate, such as a <doc://com.apple.documentation/documentation/UIKit/UIScreen> instance’s <doc://com.apple.documentation/documentation/UIKit/UIScreen/maximumFramesPerSecond> property.

For more information, see [Optimizing iPhone and iPad apps to support ProMotion displays](/documentation/QuartzCore/optimizing-iphone-and-ipad-apps-to-support-promotion-displays).

---

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)