Source: Apple Inc. Canonical content at https://developer.apple.com/design/human-interface-guidelines/progress-indicators. This file is a structured index of that content, snapshot 2025-02-02. Apple HIG text and imagery are © Apple Inc.; this repository provides organization and cross-referencing for AI agent consumption only.
Progress indicators
-
Determinate , for a task with a well-defined duration, such as a file conversion
-
Indeterminate , for unquantifiable tasks, such as loading or synchronizing complex data
Best practices
When possible, use a determinate progress indicator.
Be as accurate as possible when reporting advancement in a determinate progress indicator.
Keep progress indicators moving so people know something is continuing to happen.
When possible, switch a progress bar from indeterminate to determinate.
Don’t switch from the circular style to the bar style.
If it’s helpful, display a description that provides additional context for the task.
Display a progress indicator in a consistent location.
When it’s feasible, let people halt processing.
Let people know when halting a process has a negative consequence.
Platform considerations
iOS, iPadOS
Refresh content controls
Perform automatic content updates.
Supply a short title only if it adds value.
macOS
Prefer an activity indicator (spinner) to communicate the status of a background operation or when space is constrained.
Avoid labeling a spinning progress indicator.
watchOS
Resources
Developer documentation
Change log
For the complete guidance, including worked examples and illustrations, see the canonical page: https://developer.apple.com/design/human-interface-guidelines/progress-indicators