Skeleton paragraph
The skeleton paragraph component displays a placeholder representation of text content while it loads.
Use skeleton paragraphs to improve perceived performance by reserving space where final copy will appear.
Supported targets
- purchase.
checkout. actions. render-before - purchase.
checkout. block. render - purchase.
checkout. cart-line-item. render-after - purchase.
checkout. cart-line-list. render-after - purchase.
checkout. contact. render-after - purchase.
checkout. delivery-address. render-after - purchase.
checkout. delivery-address. render-before - purchase.
checkout. footer. render-after - purchase.
checkout. header. render-after - purchase.
checkout. payment-method-list. render-after - purchase.
checkout. payment-method-list. render-before - purchase.
checkout. pickup-location-list. render-after - purchase.
checkout. pickup-location-list. render-before - purchase.
checkout. pickup-location-option-item. render-after - purchase.
checkout. pickup-point-list. render-after - purchase.
checkout. pickup-point-list. render-before - purchase.
checkout. reductions. render-after - purchase.
checkout. reductions. render-before - purchase.
checkout. shipping-option-item. details. render - purchase.
checkout. shipping-option-item. render-after - purchase.
checkout. shipping-option-list. render-after - purchase.
checkout. shipping-option-list. render-before - purchase.
thank-you. announcement. render - purchase.
thank-you. block. render - purchase.
thank-you. cart-line-item. render-after - purchase.
thank-you. cart-line-list. render-after - purchase.
thank-you. customer-information. render-after - purchase.
thank-you. footer. render-after - purchase.
thank-you. header. render-after
Supported targets
- purchase.
checkout. actions. render-before - purchase.
checkout. block. render - purchase.
checkout. cart-line-item. render-after - purchase.
checkout. cart-line-list. render-after - purchase.
checkout. contact. render-after - purchase.
checkout. delivery-address. render-after - purchase.
checkout. delivery-address. render-before - purchase.
checkout. footer. render-after - purchase.
checkout. header. render-after - purchase.
checkout. payment-method-list. render-after - purchase.
checkout. payment-method-list. render-before - purchase.
checkout. pickup-location-list. render-after - purchase.
checkout. pickup-location-list. render-before - purchase.
checkout. pickup-location-option-item. render-after - purchase.
checkout. pickup-point-list. render-after - purchase.
checkout. pickup-point-list. render-before - purchase.
checkout. reductions. render-after - purchase.
checkout. reductions. render-before - purchase.
checkout. shipping-option-item. details. render - purchase.
checkout. shipping-option-item. render-after - purchase.
checkout. shipping-option-list. render-after - purchase.
checkout. shipping-option-list. render-before - purchase.
thank-you. announcement. render - purchase.
thank-you. block. render - purchase.
thank-you. cart-line-item. render-after - purchase.
thank-you. cart-line-list. render-after - purchase.
thank-you. customer-information. render-after - purchase.
thank-you. footer. render-after - purchase.
thank-you. header. render-after
Anchor to PropertiesProperties
Configure the following properties on the skeleton paragraph component.
- Anchor to contentcontentcontentstringstringDefault: ''Default: ''
The content to be used as a base for the skeleton. This content will be hidden when the skeleton is visible.
This can be useful when the skeleton is representing a known piece of content which is part of a larger element that has not yet fully loaded.
- Anchor to idididstringstring
A unique identifier for the element. Use this to reference the element in JavaScript, link labels to form controls, or target specific elements for styling or scripting.
Anchor to ExamplesExamples
Anchor to Reserve space for loading contentReserve space for loading content
Reserve space for loading content with a placeholder animation. This example renders a default s-skeleton-paragraph as a loading state stand-in.
Reserve space for loading content

html
Anchor to Size a skeleton to match final copy lengthSize a skeleton to match final copy length
Match placeholder height to the approximate length of the real text. This example sets the content prop with hidden placeholder text that drives the skeleton block size.
html
Anchor to Reserve space for multi-line contentReserve space for multi-line content
Preview how tall a multi-line block will be before the data arrives. This example uses content with longer placeholder text so the skeleton spans multiple lines.
html
Anchor to Best practicesBest practices
- Match the final layout: Set
contentso the skeleton approximates the height of the real text, preventing layout shift on load. - Use sparingly: Only add skeleton paragraphs where content genuinely loads asynchronously. Don't use them for static text.
- Pair with loading logic: Replace the skeleton with actual content as soon as the data is available. Avoid lingering placeholders.