diff --git a/src/components/Checklist.astro b/src/components/Checklist.astro
index 18b3e5772..e3541024c 100644
--- a/src/components/Checklist.astro
+++ b/src/components/Checklist.astro
@@ -52,9 +52,9 @@ const { checklistKey, title } = Astro.props;
display: grid;
grid-template-columns: 1.5rem 1fr;
gap: 0.5rem;
- align-items: baseline;
+ align-items: flex-start;
position: relative;
- padding: 0.5rem;
+ padding: 0.2rem .5rem;
border-radius: 0.25rem;
cursor: pointer;
color: var(--sl-color-gray-2);
@@ -75,6 +75,7 @@ const { checklistKey, title } = Astro.props;
margin: 0;
cursor: pointer;
transition: all 0.2s ease;
+ margin-top: 0.175rem;
}
check-list :global(input[type='checkbox']:focus-visible) {
diff --git a/src/content/docs/get-started/performance.mdx b/src/content/docs/get-started/performance.mdx
index 3b44c5eb3..0517f5089 100644
--- a/src/content/docs/get-started/performance.mdx
+++ b/src/content/docs/get-started/performance.mdx
@@ -1,5 +1,5 @@
---
-title: Performance Best Practices
+title: Performance best practices
description: Align your Commerce storefront with Adobe Edge Delivery performance guidance (Keeping it 100), with boilerplate-specific file locations and links to storefront docs.
sidebar:
label: Performance best practices
diff --git a/src/content/docs/setup/launch/index.mdx b/src/content/docs/setup/launch/index.mdx
index b5dcea2be..911f850e6 100644
--- a/src/content/docs/setup/launch/index.mdx
+++ b/src/content/docs/setup/launch/index.mdx
@@ -1,32 +1,39 @@
---
title: Launch checklist
-description: Verify that you have completed all recommended steps before launching your Adobe Commerce on Edge Delivery Services storefront project.
+description: Launch steps for Adobe Commerce Storefront on Edge Delivery Services, plus Adobe Commerce Optimizer program checks when you use Cloud, Optimizer, and the storefront together.
---
import Link from '@components/Link.astro';
-
import TableWrapper from '@components/TableWrapper.astro';
-import { Card, CardGrid } from '@astrojs/starlight/components';
import Checklist from '@components/Checklist.astro';
-import { Icon } from '@astrojs/starlight/components';
-Adobe’s launch resources are designed to help you achieve a seamless and successful rollout of your Adobe Commerce storefront powered by Edge Delivery Services.
+Complete these steps before production traffic reaches your Adobe Commerce Storefront (EDS). As you do, capture what you changed in staging and outline the exact go-live sequence—such as DNS, CDN, endpoints, and content. Then document your rollback plan so production cleanly reflects what you've already validated.
-Adobe Commerce projects usually require much more than a simple content delivery network (CDN) switch to launch. You must ensure that the launch activities are well defined and planned. You should also prepare a rollback plan in case you encounter any issues during the launch.
+## When your launch includes Adobe Commerce Optimizer
-## Launch checklist
+If your launch includes Adobe Commerce on Cloud, Adobe Commerce Optimizer, and a storefront on Edge Delivery Services, start with the Optimizer program linked here: . This ensures Cloud, Optimizer, and publishing stay aligned before moving on to storefront-specific tasks.
-Completing all pre-work and tasks required to launch a new storefront can be overwhelming. This checklist helps ensure that you complete and track all necessary work before going live.
+
+### Content and authoring
-As you develop, carefully track all changes made in development or staging environments to ensure that they can be applied and deployed when you migrate to production.
+* [ ] Complete the (hosted on the Adobe Experience Manager documentation site).
+* [ ] Confirm that your authoring source is document-based or Universal Editor (and configured correctly). For Universal Editor in the Commerce boilerplate, see [Universal Editor](/boilerplate/universal-editor/).
+* [ ] Publish content using the preview → publish cycle and verify it appears as expected.
+* [ ] Complete content and design QA on your project's `.aem.live` preview URL (Edge Delivery Services preview hostname).
+* [ ] Confirm that a favicon is configured and served correctly.
+* [ ] If your content lives in SharePoint, set up dedicated SharePoint access so only the right people can edit it.
+* [ ] Confirm that all drop-ins you use (cart, checkout, product detail page, product listing page, sign-in, account) are customized and tested. See the [Drop-ins introduction](/dropins/all/introduction/).
+* [ ] Confirm that storefront branding matches your CSS design tokens, typography, and colors. See [Customizing blocks](/boilerplate/customizing-blocks/).
+
### SEO and indexing
* [ ] Add document title metadata for key pages (especially PDPs and PLPs). See the [SEO metadata](/setup/seo/metadata/) documentation for details.
* [ ] Ensure that your PDPs have [metadata and structured data](/setup/seo/metadata/) (for example, JSON-LD is configured).
-* [ ] Standardize URL formats for products (example: `domain/product-name`).
+* [ ] Standardize URL formats for products (for example, `domain/product-name`).
* [ ] Redirect all vanity URLs to canonical URLs.
+* [ ] Confirm that canonical URLs return `2xx` status codes (not `3xx` or `4xx`).
* [ ] Add a `robots.txt` file to your project, which allows your site to be indexed by search
engines. Ensure that your sitemaps are referenced and that you add rules to block indexing
of any content that you do not want to be indexed (for example, the `/drafts` folder).
@@ -34,85 +41,135 @@ As you develop, carefully track all changes made in development or staging envir
URLs that were changed as part of the migration still work (for example, when you remove the
`.html` file extension).
* [ ] Generate a sitemap for your site and catalog. To speed up the indexing process, Adobe
- recommends adding the sitemap to Google Search Console.
+ recommends adding the sitemap to Google Search Console. For storefront indexing patterns (including multilingual setups), see [Indexing](/setup/seo/indexing/).
+* [ ] For multilingual sites, include `hreflang` tags in the sitemap.
+* [ ] Review the Google Search Console coverage report and resolve any indexing errors.
### Enable pre-rendering
-* [ ] Add pre-rendering for key pages. See the [pre-rendering documentation](/setup/configuration/aem-prerender/) for details.
-* [ ] Verify that all URLs are lowercase to support pre-rendering without breaking any links.
-* [ ] Validate HTML source for metadata and enriched body content (to ensure pre-rendering is working).
-* [ ] Check availability of page translations for locales with different languages.
+* [ ] Turn on pre-rendering for the pages that matter most at launch. See [Pre-rendering](/setup/configuration/aem-prerender/).
+* [ ] Use lowercase URLs everywhere so pre-rendered links stay valid.
+* [ ] View page source on a pre-rendered page and confirm you see metadata and main body content in the first HTML response.
+* [ ] For each language or region you support, open a sample page and confirm the translated content loads.
+* [ ] Add any extra HTML your project needs (for example, analytics snippets that must appear in the initial HTML). If snippets depend on the Adobe Client Data Layer or storefront events, align them with [Analytics instrumentation](/setup/analytics/instrumentation/).
### Performance and monitoring
-* [ ] Ensure you have followed all [Performance best practices](/get-started/performance/).
-* [ ] (Optional) Configure Google Analytics and Google Tag Manager.
-* [ ] Validate your
- implementation and ensure that data is displayed in your Live Search and Product
- Recommendation dashboards in the Adobe Commerce Admin.
-* [ ] Ensure that the `environment` analytics config parameter is set appropriately in your [Commerce configuration](/setup/configuration/commerce-configuration). Use the JSON strings `"Testing"` (development) and `"Production"` (production) in your storefront configuration. See [Analytics](/setup/analytics/instrumentation/).
-* [ ] Ensure that the site's Lighthouse score is green; targeting `100` on every page (taking into
- account previous considerations mentioned in this document).
+* [ ] Follow [Performance best practices](/get-started/performance/) for your storefront.
+* [ ] (Optional) Set up Google Analytics and Google Tag Manager.
+* [ ] Validate your implementation, then confirm events appear in Live Search and Product Recommendations dashboards in the Adobe Commerce Admin.
+* [ ] Validate that the `environment` field in your [Commerce configuration](/setup/configuration/commerce-configuration/#analytics) is set to `Testing` while you build, then change it to `Production` when you launch. See [Analytics](/setup/analytics/instrumentation/).
+* [ ] Confirm that your Lighthouse scores are green on key templates and aim for a strong score (for example, `100` on mobile and desktop where practical), using the same checks you already ran on your `.aem.live` preview site.
+
+
+
+### Analytics and monitoring
+
+* [ ] Confirm that Operational Telemetry is enabled before launch so you can compare performance before and after you switch traffic. Adobe documents this feature as Operational Telemetry; teams often call it Real User Monitoring (RUM). See and if you implement or tune the collection. If you proxy RUM through your origin, follow [CDN configuration](/setup/configuration/content-delivery-network/#proxy-rum-through-the-origin-to-avoid-a-tls-handshake).
+* [ ] If you use Adobe Experience Platform, confirm data collection is configured for the production site. See [Adobe Experience Platform](/setup/analytics/adobe-experience-platform/) for storefront credentials, datastreams, and how events reach the Edge Network.
+* [ ] On the production hostname, confirm that marketing technology (MarTech) tags fire and send data to the right tools. For the Adobe Client Data Layer, storefront events, and Commerce analytics settings, see [Analytics instrumentation](/setup/analytics/instrumentation/) and the [analytics section of Commerce configuration](/setup/configuration/commerce-configuration/#analytics).
+* [ ] Write down current analytics baselines (page views, bounce rate, and similar metrics) from your reporting tools so your team expects a shift after the new site ships. Separately, record Web Vitals and Lighthouse baselines using [Performance best practices](/get-started/performance/) so you can compare site speed before and after launch.
+* [ ] Walk a test order from add to cart through checkout to the order confirmation page and confirm each step is tracked. See [Validation and testing](/setup/analytics/instrumentation/#validation-and-testing) in Analytics instrumentation (checkout-related events are listed under [Event collection and validation](/setup/analytics/instrumentation/#event-collection-and-validation)), and use the in the commerce-events repository if you need a structured view of storefront events.
### Security and access
-* [ ] Verify that you have configured permissions for DA content and EDS sites. See and .
-* [ ] Ensure that the product visuals integration has been provisioned. See .
-* [ ] Verify/update password reset links. Match the Edge Delivery Services implementation in the Adobe Commerce Admin. See the [FAQ](/troubleshooting/faq#what-should-i-do-if-my-email-template-links-are-broken-after-migrating-to-edge-delivery-services-or-helix) for details.
-* [ ] Provide and configure production keys for integrations and payment providers.
-* [ ] Verify that the new domains/subdomains are `allowlisted` and potential backend webhooks are working.
+* [ ] Set permissions for Document Authoring (DA.live) content and Edge Delivery Services sites so only trusted people can publish. See and .
+* [ ] Confirm that the Product Visuals integration is available for your project. For required entitlements, prerequisites, and how the integration works, see the on Experience League. To enable AEM Assets images in your storefront configuration, see [AEM Assets integration](/setup/configuration/aem-assets-configuration/).
+* [ ] Update password reset links in email templates so they match your Edge Delivery Services URLs. See the [FAQ](/troubleshooting/faq#what-should-i-do-if-my-email-template-links-are-broken-after-migrating-to-edge-delivery-services-or-helix).
+* [ ] Add production API keys and secrets for every integration and payment provider you use in production.
+* [ ] Add your production domains to allowlists where your backends require it, and send a test webhook to confirm delivery.
+* [ ] Restrict Cross-Origin Resource Sharing (CORS) to the origins your storefront and tools actually use. See [CORS setup](/setup/configuration/cors-setup/).
+* [ ] Publish a privacy policy and a cookie consent flow that match your regions, including General Data Protection Regulation (GDPR) or California Consumer Privacy Act (CCPA) rules when they apply.
### CDN and caching
-* [ ] Update your CDN configuration with your production GraphQL endpoint (`yourproject.com/graphql`). Use that endpoint for all Sidekick extensions and scripts (for example, sitemap generation and the image importer).
-* [ ] Request a new CDN purge token for your Adobe Commerce production environment when using Adobe Commerce Fastly. Then update your by adding the authToken and serviceId values.
-* [ ] Validate your [CDN configuration](/setup/configuration/content-delivery-network/) and ensure that caching
- and cache invalidation work as expected.
-* [ ] Add a store-specific cache buster to the Catalog Service and Live Search requests for [multi-store setups](/setup/seo/indexing/#multi-store-setups) (for example, a query parameter or proxy through your CDN configuration).
+* [ ] Point your CDN, Sidekick extensions, sitemap jobs, and image importer to the same production GraphQL endpoints your storefront uses in `config.json`.
+ * **For Adobe Commerce on Cloud or on-premises (PaaS)**, this is typically `commerce-core-endpoint`, for example, `https://yourstore.example.com/graphql`, and sometimes a separate `commerce-endpoint` when Catalog Service handles catalog reads.
+ * **For Adobe Commerce as a Cloud Service** or Adobe Commerce Optimizer**, use `commerce-endpoint` on the Adobe Commerce API host, for example, `https://na1-production.api.commerce.adobe.com/your-environment-id/graphql`. See [Commerce configuration](/setup/configuration/commerce-configuration/)).
+ * **For Adobe Commerce Optimizer**, also configure `commerce-core-endpoint` when checkout or account services still rely on a separate core Commerce host.
+* [ ] If you use Adobe Commerce Fastly, request a new CDN purge token for production, then add `authToken` and `serviceId` in your .
+* [ ] Test your [CDN configuration](/setup/configuration/content-delivery-network/) and confirm cache hits, manual purges, and automatic invalidation behave as you expect.
+* [ ] Publish a small content change and confirm it appears on the production domain without stale HTML (push invalidation works end to end).
+* [ ] For [multi-store setups](/setup/seo/indexing/#multi-store-setups), add a store-specific cache buster to Catalog Service and Live Search requests (for example, a query string or a CDN rule) so each storefront cache stays separate.
+* [ ] Lower DNS time-to-live (TTL) values a few days before cutover so DNS changes propagate quickly.
+* [ ] Confirm that DNS A and CNAME records for every hostname point to the right targets.
+* [ ] Confirm that the SSL/TLS certificate is provisioned and verified for the production domain and that HTTPS is enforced everywhere.
+* [ ] Confirm that visitors who type the apex domain and visitors who type `www` both land on the URL you want.
### Catalog service
-* [ ] Switch to the Catalog Service production endpoint (`https://catalog-service.adobe.io/graphql`).
-* [ ] Ensure a production environment is configured in the Service Connector (will result in a new `environmentId`).
+* [ ] In your storefront configuration, switch to the production endpoint for Catalog or Merchandising Services.
+
+ * **For Adobe Commerce on Cloud or on-premises (PaaS)**, switch the `commerce-endpoint` to `https://catalog-service.adobe.io/graphql`. If the Adobe Commerce Optimizer Connector is configured for your project, use the Adobe Commerce Optimizer GraphQL endpoint.
+ * **For Adobe Commerce as a Cloud Service** or **Adobe Commerce Optimizer**, switch the `commerce-endpoint` to the Commerce GraphQL production endpoint for your instance, for example `https://na1-production.api.commerce.adobe.com/your-environment-id/graphql`. See [Commerce configuration](/setup/configuration/commerce-configuration/)).
+* [ ] For Commerce on cloud or on-premises only, ensure a production environment is configured in the Commerce Services Connector (will result in a new `environmentId`). See [Select or create a SaaS project](https://experienceleague.adobe.com/en/docs/commerce/user-guides/integration-services/saas#createsaasenv).
* [ ] Sync the production catalog to the new production environment.
* [ ] Create a new Commerce production API key-pair and use the public key as the `x-api-key` value.
* [ ] Verify category IDs and ensure all category pages reference the correct category.
-* [ ] Update `environmentId` and `x-api-key` values in the `config.json` code file.
+* [ ] Update `environmentId` and `x-api-key` values in the `config.json` code file. See [Commerce configuration](/setup/configuration/commerce-configuration/) for header and environment field names your storefront expects.
* [ ] Notify the Catalog Service team about the new production environment and launch date.
-
-### Project management and updates
+
+### Testing
+
+* [ ] Confirm that core flows work end to end: browse → search → filter → add to cart → checkout → account creation.
+* [ ] Confirm that payment gateways accept real and test transactions.
+* [ ] Confirm that order placement, confirmation email, and order tracking work correctly.
+* [ ] Confirm that shipping options and tax calculations are accurate.
+* [ ] Confirm that coupons, discounts, and loyalty programs behave as expected.
+* [ ] Complete user acceptance testing (UAT) on staging and production.
+* [ ] Complete load and stress testing and share results with your Adobe team.
+* [ ] Confirm that page load time is under three seconds on desktop and mobile.
+* [ ] Confirm that images, scripts, and assets are optimized.
+* [ ] Test Chrome, Firefox, Safari, and Edge for consistent behavior.
+* [ ] Confirm that responsive layouts work on mobile, tablet, and desktop.
+* [ ] Test performance on 3G, 4G, and Wi-Fi connections.
+* [ ] Complete an accessibility audit (WCAG, screen reader, keyboard navigation).
+* [ ] Establish a post-launch 404 monitoring plan.
+* [ ] Test your rollback plan to confirm it works if launch issues occur.
+
-* [ ] Notify Adobe early about your planned launch date to ensure that the Adobe Commerce team is
- available to support you during the launch.
-* [ ] Check for the latest boilerplate changes and update your project accordingly.
+
+### Launch day and post-launch
+
+* [ ] Confirm your launch date with Adobe and notify your CTA, CSE, or AM so they can coordinate support during the go-live.
+* [ ] Record the P1 support hotline number: US (+1) 800-497-0335, then press 3 for the Adobe Commerce P1 hotline.
+* [ ] Train your team to open a support ticket before calling the P1 hotline.
+* [ ] Check for the latest boilerplate changes and update your project accordingly. See [Monitor boilerplate changes](/boilerplate/updates/#monitor-boilerplate-changes).
+* [ ] Confirm that a disaster recovery plan exists and has been tested.
+* [ ] After launch, verify Lighthouse scores on the production domain.
+* [ ] After launch, monitor Google Search Console for indexing and crawl errors.
+* [ ] After launch, monitor 404 reports and add redirects for high-traffic legacy URLs.
+* [ ] After launch, confirm that MarTech and analytics data appears on production.
+* [ ] Ask your Adobe Customer Technical Advisor (CTA), Customer Service Engineer (CSE), or Account Manager (AM) to enable high-SLA monitoring.
+* [ ] Establish a process to track and upgrade boilerplate and extension packages to current versions. Start from [Updates](/boilerplate/updates/) and [Release Information](/releases/).
## Documentation
-For complete documentation on launching your storefront, visit the on the Adobe Experience Manager site or select the direct links below. You should also review the Commerce-specific [launch checklist](#launch-checklist).
+Edge Delivery Services launch topics (DNS, CDN vendors, redirects, and platform checks) are available on the Adobe Experience Manager documentation site. Start from the , or use the table below. The checklist sections above focuses on Adobe Commerce Storefront tasks for sites integrated with an Adobe Commerce backend.
| Topic | Description |
| ----- | ----------- |
-| | Summary of best practices to consider when launching a website. |
+| | Edge Delivery Services go-live practices; apply the items that match your storefront project. |
| | Automatically purge content on your production CDN whenever an author publishes content changes. |
-| | Configure Cloudflare to deliver content. |
-| | Use the Akamai Property Manager to configure a property to deliver content. |
-| | Configure Fastly to deliver content. |
-| | Set up Amazon Web Services CloudFront to deliver your AEM site with push invalidation. |
+| | Configure Cloudflare to deliver your storefront site. |
+| | Use the Akamai Property Manager to configure a property to deliver your storefront site. |
+| | Configure Fastly to deliver your storefront site. |
+| | Set up Amazon Web Services CloudFront to deliver your storefront site with push invalidation. |
| | Custom domain without having to set up a content delivery network. |
| | Manage redirects as a spreadsheet from the `redirects` document in the root of your project folder. |