Progress Ring
A circle that shows how much of a measurable task is done.
A real example
A ring around a file icon fills from 0 to 100% during a download. Assistive technology also receives the exact number.
Main parts
- 01State signal
- 02Human-readable message
- 03Timing or progress
- 04Recovery path
Use it when
Use it when measurable progress has little horizontal space. It also fits progress tied to a small object.
Do not use it when
Do not spin an empty ring when the wait time is unknown. That is a spinner, not a progress ring.
Name used in code
role=progressbar + aria-valuenow + SVG circle Before you ship
Before release, check the page structure, keyboard access, visible focus, contrast, and zoom. Also check loading, empty, error, success, cancel, and reduced-motion states.
Outcome: Use Progress Ring to solve this user need without losing the current context. User context: A ring around a file icon fills from 0 to 100% during a download. Assistive technology also receives the exact number. Recommended pattern: Progress Ring. Why it fits: Use it when measurable progress has little horizontal space. It also fits progress tied to a small object. Do not use it when: Do not spin an empty ring when the wait time is unknown. That is a spinner, not a progress ring. Product requirements: Define the default, loading, empty, error, success, and recovery states. Keep user input. Give clear feedback after every action. Accessibility and resilience: Use semantic HTML, full keyboard access, and visible focus. Make the layout work when zoomed and support reduced motion. Follow the project’s current rules. Do not add a new UI library unless the project already uses it. Acceptance criteria: The main task works with keyboard only and at 320px width. Focus and status changes are announced. Check loading, failure, retry, cancel, and reduced-motion paths. Evidence and limits (evidence boundary): No single official standard controls the whole term. Its meaning may change across teams, platforms, or frameworks. Unknowns to confirm: Product wording, data source, analytics events, supported devices and languages, and platform limits.
Check this request
Review the current use of Progress Ring. Definition: A circle that shows how much of a measurable task is done. Release checks: Before release, check the page structure, keyboard access, visible focus, contrast, and zoom. Also check loading, empty, error, success, cancel, and reduced-motion states. Before changing code, report the evidence you found, gaps, severity, and the smallest safe fix.