AccountCraft Journal
Shopify Account Widgets: Add, Test and Measure Blocks
How Shopify account widgets work in New Customer Accounts: block types, where to place them, how to test, what to measure and how to handle consent.

Shopify account widgets are blocks you place on the pages of New Customer Accounts: a wishlist on the profile page, a banner above the order list, an editable preferences form. You add them in the checkout and accounts editor, you move them where you want them, and you do not touch your theme. This guide covers what the widget types are, how to add and position them, how to test changes before customers see them, which numbers you can realistically track, and how to handle consent when a widget collects data.
TL;DR
- Account widgets are blocks, full-page extensions or static extensions. Blocks are the flexible ones: you choose where they sit.
- You add them under Settings > Checkout in the checkout and accounts editor, and each highlighted area holds a maximum of 3 apps.
- Account pages have limited analytics. Pixels only fire after you connect a custom subdomain, and then only for the page_viewed event.
- Test every supported placement before publishing, not just the default one.
- Any widget that collects data needs a consent plan. Compliance stays your responsibility as the merchant.
Table of Contents
- What account widgets are in Shopify
- The three kinds of account widgets
- What a block builder changes
- How to add and position blocks
- Conditional widgets: show the right block to the right customer
- Testing account changes before customers see them
- Measuring account page activity
- Consent and customer data in account widgets
- Our perspective
- Try it on your own account pages
- FAQ
- Sources
What account widgets are in Shopify
“Widget” is not a Shopify term, but it is what merchants type when they want a modular piece of functionality on the customer account. Shopify’s own wording is customer account extensions: modular blocks that let merchants add content, collect information or offer services such as wishlists and loyalty programs in locations the merchant chooses, without code.
This only applies to New Customer Accounts. Legacy customer accounts are the older system that merchants are migrating away from, and they relied on theme code for any customization. If you are still on the legacy version, the first job is the move, not the widgets. Our New Customer Accounts overview walks through what changes.
It also helps to separate account widgets from the things Google tends to show for this search. Reviews sections, floating chat bubbles and embeddable shop widgets live on your storefront theme. Account widgets live inside the logged-in area, on pages Shopify hosts. The tools are different, and so are the limits.
The three kinds of account widgets
Shopify’s customer account UI extensions documentation names three target types. Knowing which one you need saves a lot of trial and error.
| Type | Where it renders | Best for |
|---|---|---|
| Block | A merchant-defined location on a supported page | Content that works on its own: wishlists, banners, preference forms |
| Full-page | A dedicated route inside the account | Loyalty dashboards, subscription management, a full wishlist page |
| Static | A fixed location tied to a page feature | Order-action buttons, announcement banners |
Blocks
Blocks are what most merchants mean by widgets. Shopify explains that block extensions can be moved among supported locations, while static extensions render in one designated spot. If you want control over placement, you want blocks.
The Targets reference lists the inline locations: order index, order status, profile and footer, plus order-action menu and modal targets. Typical use cases include return requests, reorders, subscription management, profile fields, address validation and loyalty information.
Full-page extensions
A full-page extension creates its own destination. Shopify’s tutorial uses a wishlist as the example and notes that the customer stays inside the account without logging in again, with your branding preserved. Choose this when the experience needs room: a long list, a dashboard, a multi-step flow.
Static extensions and order actions
Static targets fit functionality that depends on a specific page element. The order action menu is the clearest case. According to Shopify’s order action documentation, these extensions suit customer-triggered order workflows, can open a modal, and can show or hide depending on fulfillment status or B2B company membership.
On the order status page, Shopify also draws a line between two content types. In the Order status reference, announcements are dismissible banners for time-sensitive news such as a delivery delay, while blocks are persistent inline content such as tracking details or order-specific recommendations. A delay notice is an announcement. A “reorder this” suggestion is a block.
A quick way to choose
Ask three questions:
- Does the content make sense no matter what else is on the page? Use a block.
- Does it need its own destination? Use a full-page extension.
- Does it depend on one specific element, like an order button? Use a static target.
What a block builder changes
Developing extensions yourself means writing against Shopify’s APIs. Most merchants and agencies would rather assemble pages visually. That is the gap a block builder fills, and it is the reason we built AccountCraft.
AccountCraft runs on official Shopify Customer Account UI Extensions, so everything above (placement, the editor, the limits) applies to it. Inside it, you build the account page from 14 block types:
- Text, banner, button, card
- Update form and single field
- Record list
- SMS consent and privacy consent
- Wishlist
- Image, video, spacer and divider
Customer fields bind to customer metafields, so what a customer types is stored in Shopify, not in a separate database. Record lists handle repeatable data such as pets or vehicles. Blocks can be shown or hidden by customer tag, metafield, market, B2B status and account age, and the content can be translated.
If you want the longer tour of each block, see our breakdown of the 14 blocks. For field setup specifically, our guide to custom fields on the Shopify account goes step by step.
How to add and position blocks
The process is the same for any app that provides account blocks.
- In Shopify admin, go to Settings > Checkout.
- Open the configuration you want to edit. This opens the checkout and accounts editor.
- Switch to the customer accounts pages (profile, orders, order status).
- Use the Sections or Apps sidebar to add a block.
- Drag it to its place and adjust its settings.
- Save, then preview before you publish.
Shopify documents these steps in its checkout and accounts editor help page. Two details matter in practice.
There is a cap. Each highlighted area in the editor accepts a maximum of 3 apps. If you plan a wishlist, a preference form and a loyalty widget in the same area, you will hit it. Decide which jobs belong in which area, or consolidate several jobs into one app’s blocks.
New blocks do not land where you expect. Shopify’s profile extension tutorial says a profile block first renders at the first available placement and should be moved to its intended location in the editor. Check the surrounding content every time. A form sitting directly under an unrelated banner reads very differently from the same form under the customer’s name and email.
Placement ideas that tend to work
- Profile page: a preferences form (birthday, size, communication choices) and a consent block, since this is where customers already expect to edit personal details.
- Order index: a banner for returns or reorder information.
- Order status: blocks for tracking-adjacent content, and an announcement for delays.
- Footer: a help or contact card.
For wishlists specifically, there is a no-code route that keeps guest checkout intact. We covered the trade-offs in increasing account signups without forcing accounts.
Conditional widgets: show the right block to the right customer
A single account layout rarely suits every customer. A wholesale buyer does not need the same card as a first-time shopper. With AccountCraft’s conditional rendering you can show a block only when a customer matches a condition: a customer tag, a metafield value, a market, B2B status or account age.
A few practical combinations:
- A welcome card visible only to accounts that are newly created.
- A pricing or ordering note for B2B customers only.
- A localized banner for one market, with translations for the others.
- A pet or vehicle record list shown only to customers tagged for a relevant program.
Keep conditions simple. Every rule is one more scenario you have to test, which brings us to the next part.
Testing account changes before customers see them
Account pages are behind a login, so you cannot just open the URL and look. Shopify’s guidance on testing customer account UI extensions is to recreate different user scenarios and, for block extensions, preview each supported placement using a placement-reference URL parameter. Static extensions render automatically in their chosen location.
That guidance is written for developers, but the discipline applies to anyone using a builder: do not judge a widget from one default view.
A practical test checklist:
- Every placement. Preview the block in each location you are considering, not only the one you picked first.
- Every audience. If you use conditions, test with a customer who matches and one who does not. Use test customers with the relevant tags and metafield values.
- Every market and language. Check translations for text length and meaning.
- Empty and full states. A record list with zero entries and one with ten both need to look right.
- Mobile. Many customers check orders from a phone.
- The save path. Edit a field as a customer, then confirm in the customer record in Shopify admin that the metafield changed.
That last step is worth building into every release. It confirms the widget does the job, not just that it renders.
Can you A/B test account pages?
Not with a simple switch. Account pages are Shopify-hosted and the tools you would normally use on a storefront do not run there by default. What you can do is change one thing at a time, note the date, and compare the metrics you do have over comparable periods. If you work with an agency on broader experimentation, a comparison like VWO and Optimizely compared for Shopify stores helps you understand what experimentation platforms do on the storefront side, even though the account area has its own limits.
Measuring account page activity
This is where expectations need resetting. Account pages do not offer the rich analytics a storefront does.
According to Shopify’s pixels overview, pixels load on customer account pages only after a custom subdomain is connected, and they track only the page_viewed event there. Shopify’s customization options guide for upgrading adds that custom pixels can use the Advanced DOM Events API to recreate user journeys and interactions, which is the route for session recordings and heatmaps.
So in practice you have three layers:
| What you want to know | What you can use |
|---|---|
| Are customers visiting account pages? | page_viewed from a pixel, after the custom subdomain is set up |
| What do they click and where do they stall? | A custom pixel with the Advanced DOM Events API, feeding a recording or heatmap tool |
| Did the widget produce data or behavior you wanted? | Shopify admin: metafield values filled in, customers tagged, consent records, wishlist usage, return rates, repeat orders |
The third row is the most reliable. If you add a preferences form, count how many customer records have those metafields filled after a month. If you add a consent block, check how many customers have updated their choices. These are outcome numbers that do not depend on event tracking.
On the privacy side, Shopify’s pixel manager stores scripts in one place and runs them in a sandbox, which adds control over what is shared with third parties. Keep in mind that when you use pixels, you are responsible for privacy obligations and for obtaining the consents your laws require. If you want to check what fires and when, our guide on testing pixels and adding account consent shows the process.
Performance: what to watch
Account widgets run as extensions, and Shopify’s extension performance guidance is blunt about what slows them down. Monitor load time and bundle size, audit backend response times, and avoid network calls, expensive parsing or third-party SDK setup at module scope. Shopify also advises using its data APIs and storing app data in metafields or metaobjects rather than fetching it from an outside server, and running independent requests in parallel.
As a merchant, you cannot rewrite an extension, but you can choose well:
- Prefer apps that keep data in Shopify rather than calling out to their own servers. AccountCraft stores customer data in Shopify, with no separate customer database.
- Do not stack more widgets than the page needs. The cap of 3 apps per area is a limit, not a target.
- After each change, open the account on a real phone on a normal connection and judge how it feels.
Consent and customer data in account widgets
Any widget that lets customers view or edit personal data, or opt in to messages, touches privacy law. We are not lawyers and this is not legal advice; what follows is how the Shopify side works, so you can discuss it with your own counsel.
Shopify’s Customer Privacy API lets extensions manage consent for analytics, marketing and data sharing, and check regional opt-out requirements such as CCPA in California. Developers are told to check the shouldShowBanner property to see whether a consent banner is needed at load, instead of always showing one.

Shopify’s own page on using Shopify to help with GDPR says Shopify provides tools to access, edit and delete customer data, while the merchant must inform customers of their rights. Customer-facing account pages are exactly where those rights become usable.
Here is how AccountCraft fits. Its privacy consent and SMS consent blocks help collect, record and honor customer consent through Shopify’s customer privacy APIs, and editable fields let customers correct their own data. No app makes a store compliant on its own. Your policies, your lawful basis for processing and your contracts remain your responsibility.
A few related reading paths, depending on your market:
- Selling to California: our four admin steps for CCPA with the Customer Privacy API.
- Selling in the EU: how consent expiry works for EU stores and our note on letting customers edit metafields.
- Working with consent tooling on the storefront too: this walkthrough of Consent Mode v2 setup covers the regional consent side from a UK angle.
One more point for agencies. The European Data Protection Board’s controller and processor guidelines say a processor must act only on the controller’s instructions under a binding written contract. Document what each app does with customer data before you install it on a client’s store.
Our perspective
Most account customization advice starts with what to add. We start with what you can safely maintain. After working on New Customer Accounts, our view is that a good account page does three small things well: it shows customers their own data, lets them correct it, and records what they agreed to.
We built AccountCraft around official Shopify extensions and Shopify’s own data model on purpose. When fields bind to customer metafields and consent goes through Shopify’s privacy APIs, the information stays where your team already manages customers. There is nothing to sync, and nothing to explain to a customer who asks where their data lives.
Our advice is to begin with one page, usually the profile, and add a single block you can measure. Check the metafield fill rate after a month. Then add the next one. Widgets that nobody uses are not neutral: they add load, add scenarios to test and add data to defend.
— Ivan Signorile
Try it on your own account pages
AccountCraft has a free plan, and paid plans (Pro and Plus) are billed through Shopify. For current pricing and plan details, check the listing on the Shopify App Store. You can build a profile page with editable fields, a wishlist and a consent block, preview it in the editor, and publish when it looks right. See the plans on the AccountCraft site or install AccountCraft free from the Shopify App Store.

If you manage several stores, start with the store that has the most account logins, so your first results arrive faster. For more guides, browse the AccountCraft blog, or read how no-code account UI extensions work in more detail.
FAQ
Do I need to edit my theme to add account widgets?
No. New Customer Accounts are customized through the checkout and accounts editor, reached from Settings > Checkout, not through theme files. Apps add blocks there, and you place them with drag and drop.
How many widgets can I put on one account page?
Shopify’s editor allows a maximum of 3 apps per highlighted area. An app can still supply several blocks, so a builder with many block types can cover more jobs within that limit.
Can I track clicks on my account page?
Only with extra setup. Pixels run on customer account pages after you connect a custom subdomain, and by default they track only page_viewed. For clicks and journeys, Shopify points to custom pixels using the Advanced DOM Events API.
Does adding a consent widget make my store GDPR compliant?
No. A consent block helps you collect, record and honor customer choices through Shopify’s privacy APIs, but compliance depends on your overall practices, contracts and legal basis. Ask a qualified privacy professional about your specific situation.
Sources
- Introducing Customer Account Extensions, Shopify
- Customer account UI extensions, Shopify developer docs
- Targets reference, Shopify developer docs
- About inline UI extensions, Shopify developer docs
- Build new pages in customer accounts
- Build for order action menus
- Order status targets, 2026-04
- Customizing your checkout and accounts, Shopify Help Center
- Build an inline profile UI extension
- Test customer account UI extensions
- Pixels overview, Shopify Help Center
- Customization options for upgrading, Shopify Help Center
- Customer account UI extension performance
- Customer Privacy API
- Using Shopify to help comply with GDPR, Shopify Help Center
- EDPB guidelines 07/2020 on controller and processor