---
title: Empty state
description: >-
Every app has moments when there's nothing to show yet and some action is
required of the merchant before they can manage resources. The empty state
composition turns these blank screens into opportunities by guiding merchants
toward their first action.
api_name: app-home
source_url:
html: 'https://shopify.dev/docs/api/app-home/patterns/compositions/empty-state'
md: 'https://shopify.dev/docs/api/app-home/patterns/compositions/empty-state.md'
---
# Empty state
Every app has moments when there's nothing to show yet and some action is required of the merchant before they can manage resources. The empty state composition turns these blank screens into opportunities by guiding merchants toward their first action.
Include a clear explanation of what will appear here and a prominent call-to-action to help merchants get started. This composition follows proven design guidelines that help your app feel native to the Shopify admin. See [Built for Shopify requirements](https://shopify.dev/docs/apps/launch/built-for-shopify/requirements) for more details on these guidelines.
#### Use cases
* Onboarding merchants to create their first item in a collection
* Guiding merchants when search or filters return no results
* Prompting feature activation or configuration
***
## Examples
### Display an empty state with centered content and actions
Merchants need guidance and a clear next step when a list or page is empty. This pattern displays an empty state with centered content and primary and secondary actions. The [grid](https://shopify.dev/docs/api/app-home/web-components/layout-and-structure/grid) centers content vertically and horizontally. Use the [button group](https://shopify.dev/docs/api/app-home/web-components/actions/button-group) with `slot="primary-action"` and `slot="secondary-actions"` for clear next steps.
##### jsx
```tsx
{/* aspectRatio should match the actual image dimensions (width/height) */}
Start creating puzzles
Create and manage your collection of puzzles for players to enjoy.
{" "}
Learn more{" "}
{" "}
Create puzzle{" "}
```
##### html
```html
Start creating puzzles
Create and manage your collection of puzzles for players to enjoy.
Learn more
Create puzzle
```
### Navigate to create page
Use `href` attributes to navigate merchants to a create page when they click the primary action button.
##### jsx
```tsx
Create your first puzzle
Get started by creating a puzzle template. You can customize the number of pieces, shape, and difficulty level.
Create puzzle
```
##### html
```html
Create your first puzzle
Get started by creating a puzzle template. You can customize the number of pieces, shape, and difficulty level.
Create puzzle
```
### Open Shopify interfaces with Intents
Use the [Intents API](https://shopify.dev/docs/api/app-home/apis/intents) to make empty state actions open native Shopify interfaces, allowing merchants to browse existing resources or create new ones without leaving your app.
##### jsx
```tsx
{/* @validate-ignore: possibly 'undefined', Cannot invoke an object */}
No products yet
Add products from your Shopify catalog to get started with quality auditing.
{
shopify.intents.invoke('browse:shopify/Product');
}}
>
Browse products
{
const activity = await shopify.intents.invoke('create:shopify/Product');
const response = await activity.complete;
if (response.code === 'ok') {
shopify.toast.show('Product created');
}
}}
>
Create product
```
##### html
```html
No products yet
Add products from your Shopify catalog to get started with quality auditing.
Browse products
Create product
```
***