Playbook · Shopify sticky / floating add to cart bar not showing on mobile PDP
Shopify sticky add to cart missing on mobile.
Written for a Shopify DTC owner whose sticky / floating add to cart bar never appears on the mobile product page — theme sticky ATC / mobile buy-bar section disabled or dropped after a theme edit, sticky ATC App embed unpublished on Current, or CSS / z-index / safe-area / chat overlays hiding the bar after scroll. DIY-first: prove theme settings vs app embeds vs CSS conflicts; repair the live product template; retest on a real mobile viewport on the live storefront. Distinct from cart drawer / AJAX cart not updating, accelerated buy buttons (Shop Pay, Apple Pay, Google Pay), recently viewed products blank or missing, and wishlist / save for later button missing. A sticky bar that mounts but whose Add to cart click does nothing is sticky-add-to-cart-not-working. No earnings claims, no invented case studies.
Nico at Latch AI Ops · Sep 8, 2026 · ~12 minute read
Buy the 72-hour install — $997Cart drawerWishlist missingMerchant FAQ
01
Sticky / floating ATC missing on mobile PDP — not cart drawer, not buy buttons, not recently viewed, not wishlist.
Several product-page controls can look like “the buy UI disappeared.” They do not share a settings panel. This page is only when the sticky / floating add to cart bar never mounts on the mobile product page after the shopper scrolls past the main form (theme settings, app embeds, CSS conflicts). Cart drawer / AJAX cart not updating after add is cart-drawer-not-updating. Accelerated buy buttons missing (Shop Pay / Apple Pay / Google Pay) are shop-pay-not-showing, apple-pay-not-showing-shopify, and google-pay-not-showing-shopify. Recently viewed products blank is shopify-recently-viewed-not-showing. Wishlist / save for later heart missing is shopify-wishlist-button-missing. A sticky bar that is visible but whose click does nothing is sticky-add-to-cart-not-working. This page is only: sticky / floating add to cart bar not showing on mobile PDP.
Six ordinary reasons the bar never appears: the theme sticky ATC / mobile buy-bar section was never added to the live product template, the section is on a draft theme only, the sticky ATC App embed is off on Current, CSS sets display:none / visibility:hidden / opacity:0 / translate off-screen, z-index / safe-area / bottom offsets put the bar under the fold or under a chat / cookie overlay, or support tested cart drawer / buy buttons / recently viewed / wishlist and called it “sticky ATC.” Walk them in that order. You already pay for Shopify.
02
Prove theme settings vs app embeds vs CSS conflicts on a live mobile PDP.
On the live storefront (not theme editor preview), open a published product on a real phone or DevTools at a mobile width. Scroll past the main add-to-cart form. Capture: whether any sticky / floating / mobile buy bar exists in the DOM (Elements), Online Store → Themes → Customize → product JSON template for a Sticky add to cart / Mobile buy bar / Floating ATC section or app block, Theme settings → App embeds for sticky ATC apps on Current, and Computed style on any sticky node for display, visibility, opacity, transform, z-index, bottom, padding-bottom env(safe-area-inset-bottom), and what sits above it (Inbox chat, cookie banner, sticky header). Screenshot each. One failing path is enough to stop guessing.
Also prove the negative: a cart drawer that opens but does not update is not this page; missing Shop Pay / Apple Pay / Google Pay buttons are buy-button playbooks; a blank Recently viewed row is shopify-recently-viewed-not-showing; a missing wishlist heart is shopify-wishlist-button-missing. If the sticky bar mounts and the click is dead, use sticky-add-to-cart-not-working. If App embeds fail across many apps, that is app-embed-not-loading.
03
Theme sticky ATC / mobile buy-bar section disabled or dropped from the live product template.
Most OS 2.0 themes and sticky-ATC apps mount the bar as a product-template section, theme setting toggle (“Enable sticky add to cart,” “Show mobile buy bar”), or theme app block. After a theme swap, section-group edit, or “clean up unused sections,” the block often disappears from the live JSON template while the app still looks installed in Admin. Draft themes can show the bar in Customize while Current does not. Some themes only enable the bar above a breakpoint — so desktop looks fine and mobile never mounts.
Fix path: Online Store → Themes → Customize on the Current theme. Open the product template shoppers hit on mobile. Enable or add the theme’s Sticky add to cart / Mobile buy bar section (or the app’s sticky ATC block). Confirm section settings (show on mobile, hide until scroll, product form selector) match the design. Save. Hard-refresh a live mobile PDP and scroll. If JSON templates / section groups fail to load at all, that is json-templates-section-groups-broken.
04
Sticky ATC App embed off on Current, draft-only, or fighting the native bar.
Sticky / floating ATC apps often need an App embed (plus sometimes a theme app block) before any bar mounts. The app can look “installed” with settings filled while the embed is toggled off on Current, enabled only on a draft, or blocked by a consent / script manager that strips the vendor script. Two sticky ATC apps (or a native theme bar plus an app bar) can also cancel each other so neither shows on mobile.
Fix path: Customize on the live theme → Theme settings → App embeds. Enable the sticky / floating / sticky-buy-bar embed you intend to use. Disable duplicate sticky ATC embeds that fight the native bar. Save. Retest live on mobile. If many embeds fail together (reviews, pixels, consent), chase app-embed-not-loading first. If a cookie banner blocks scripts before consent, see cookie-banner-blocking-checkout — the same consent surface can starve sticky ATC scripts.
05
CSS / z-index / safe-area / chat or cookie overlays hiding the sticky bar.
The sticky node can exist in the DOM while shoppers never see it. Common CSS fights: display:none or visibility:hidden from a theme setting class, opacity:0 until a JS class that never fires, transform: translateY(100%) stuck, z-index under a sticky header / Shopify Inbox / Gorgias / cookie banner, bottom:0 without safe-area padding so iOS home indicator covers the button, or a full-width chat launcher covering the bar on narrow screens. Desktop preview in the theme editor often misses these because chat widgets and safe-area behave differently on a real phone.
Fix path: In DevTools on a mobile width, select the sticky / floating ATC node. Check Computed display, visibility, opacity, transform, z-index, and bottom. Raise z-index above chat / cookie overlays, or move the chat launcher. Add padding-bottom: env(safe-area-inset-bottom) on the bar container. Remove custom CSS that hides .sticky-atc / .mobile-buy-bar / the app’s class on product templates. Retest on a real device, not only the editor. If the bar is visible but Add to cart does nothing, switch to sticky-add-to-cart-not-working.
06
You tested cart drawer, buy buttons, recently viewed, or wishlist instead.
Cart drawer / AJAX cart not updating after add is cart-drawer-not-updating. Shop Pay / Apple Pay / Google Pay buttons missing are shop-pay-not-showing, apple-pay-not-showing-shopify, and google-pay-not-showing-shopify. Recently viewed products blank is shopify-recently-viewed-not-showing. Wishlist / save for later button missing is shopify-wishlist-button-missing. Variant picker not updating price / image / ATC is variant-picker-not-updating.
The only honest test for this page: sticky / floating add to cart bar not showing on mobile PDP — fixable with a live sticky ATC / mobile buy-bar theme section, an enabled App embed (and no fighting duplicate), and CSS / z-index / safe-area that does not hide the bar — not cart drawer alone, not buy buttons alone, not recently viewed alone, not wishlist alone. Capture theme settings + embeds + CSS, fix the path. Anything else is a different product.
07
When to stay DIY vs pay $997.
Stay DIY if you can spend one afternoon on the list above: prove theme settings vs app embeds vs CSS conflicts, enable the sticky ATC / mobile buy-bar section on the live product template, enable the App embed on Current, fix z-index / safe-area / overlay fights, and stop confusing cart drawer / buy buttons / recently viewed / wishlist with a missing sticky bar. That is the whole playbook. No agency required. Short answers also live on the merchant FAQ. Related pages: sticky-add-to-cart-not-working, cart-drawer-not-updating, shop-pay-not-showing, shopify-recently-viewed-not-showing, shopify-wishlist-button-missing, app-embed-not-loading, cookie-banner-blocking-checkout.
Pay for help when the work is not the sticky bar — it is connecting the stack you already have so lead capture is not dying in DMs, storefront and checkout-ready exceptions land in a channel you already check, and the live store is one workflow instead of a spreadsheet plus a Slack bot you forgot. That is the Latch AI Ops install.
What $997 USD one-time buys: lead capture on the live store, ops alerts in a channel you already check, and a checkout-ready workflow. 72 hours after collaborator access, not after payment. One live Shopify store. Access plus a delivery thread. Store URL collected at checkout. Not a SaaS seat, not a sticky-ATC-app rebuild, not an earnings number.
Other shops' public ranges, not testimonials: a checkout / ops install typically runs $500–$2,500. A full ops consulting block typically runs $2,000–$5,000. $997 is the cheap end of that work, sold as a 72-hour install of three systems — not as an earnings number or sticky-ATC-uptime guarantee.
What it does not buy: more orders, recovered sticky-ATC clicks, a forever mobile-buy-bar-uptime guarantee, or a case study. Latch AI Ops has not published customer proof because there are no customers yet. You are buying the install.
Buy the 72-hour install — $997Cart drawerWishlist missingMerchant FAQ