Recover abandoned carts with web push when you still lack email or SMS

How to recover abandoned carts with web push: browser opt-in, notification sequences, email/SMS backup, and Leadara setup.

Niloofar Karimi

Product positioning, messaging, and content for product growth—aligned with product and sales.

September 26, 2026 · 7 min read

Also available in فارسی

بازیابی سبد با اعلان وب‌پوش: وقتی هنوز ایمیل یا پیامک ندارید

Web-push cart recovery means that after a browser permission grant, you show a short native notification that deep-links the shopper back to the same cart — even when your tab is closed and you still do not have their email or phone.

What is web-push cart recovery?

Web push is a browser-native notification. The visitor opts in once; you store the subscription endpoint; when a cart goes idle, a journey sends a message. Unlike email, you do not need an address first. Unlike SMS, you do not need a phone number or an SMS panel — but you only reach people who allowed notifications.

For stores, the best uses are cart reminders, back-in-stock, and occasional price-drop alerts — not a daily “special offer” firehose.

Why this is a hot question for Iranian shops now

2026 retention guides treat web push as an owned channel: no app install, less dependence on Instagram. Persian marketing write-ups describe push retargeting for abandoned carts, and WooCommerce tools ship default sequences like 45 minutes / 4 hours / 24 hours. Teams keep asking AI: “How do we recover carts without a phone number?”

When social traffic is unreliable, a notification permission on your own domain becomes a backup lane.

Where push does not replace email or SMS

ChannelIdentity neededWorks with tab closedMain limit
Web pushBrowser permissionYes (with service worker)Opt-in only; browser/OS support
EmailAddress + consentYesDeliverability
SMSMobile + consentYesCost, CRA consent, frequency

Push is a complement, especially for guests who never shared a phone number — not a VIP SMS replacement.

How to ask permission without scaring people

  1. Value first, prompt second — after add-to-cart, wishlist, or signup — not on the first homepage millisecond;
  2. Use your own pre-prompt — a small banner that says you will remind them about an unfinished cart, then call the browser API;
  3. Respect Deny — do not re-prompt in the same session;
  4. Test mobile separately — iOS/Safari behavior is not desktop Chrome.

Do not merge notification permission with SMS consent; two channels, two flags.

Suggested push recovery sequence

TouchDelayNotification jobSuggested TTL
115–60 minutes of cart idleSoft “your cart is waiting” + top product name2–3 hours
24–6 hoursRemove one friction (free shipping from amount X)a few hours
324 hoursFinal reminder without fake countdownshort

Rules:

  • Deep-link to cart or checkout, not home;
  • Stop further cart pushes after purchase (same collapse tag);
  • Two or three pushes per cart is enough for most brands;
  • Keep copy short; leave price detail on the cart page.

Real store scenarios

Fashion shop fed by Instagram: shopper arrives from a story, adds two items, leaves. If they subscribed in-session, a 45-minute push can bring them back before they DM another brand.

High-ticket home goods: first push with no discount; if they click but do not buy, follow with email that explains shipping; SMS only with consent and above a cart-value floor.

Digital goods with thin stock: “low stock” push only when inventory events are real — fake scarcity burns trust.

How Leadara web push works

From Leadara’s public docs:

  1. Host the push service worker file at your shop’s site root (same www/non-www host);
  2. After a meaningful opt-in, call leadara.subscribePush();
  3. Create a Web Push template and add a Web Push node in a journey;
  4. Check the profile for an active subscription and read SENT/FAILED in Web Push logs;
  5. If someone never subscribed, the push step is Skipped and the journey continues — so keep email/SMS behind it.

Teammates can also get browser alerts for new live-chat messages inside the dashboard; that is separate from visitor push on the storefront.

Leadara AI Chat is an internal dashboard assistant for your team (draft templates, ask about segments). It is not the customer-facing reply engine in live chat. Live chat is for human support.

Technical checklist before go-live

  1. leadara-push-sw.js on the exact shop origin;
  2. Valid HTTPS;
  3. Opt-in after a meaningful action;
  4. identify for logged-in users so the subscription sticks to the right profile;
  5. One test SENT in Web Push logs;
  6. A next email/SMS step for visitors without push.

What good notification copy looks like

  • Title that fits one mobile line;
  • Body that states one benefit or removes one blocker;
  • Few emojis, no “!!!”;
  • Natural language for your audience;
  • For multi-item carts, “+2 more” is enough — do not dump the whole basket into the notification.

Combine with email and SMS

A healthy pattern:

  1. Push touch 1 (fast, cheap);
  2. If email exists and still no purchase → email;
  3. If SMS consent and cart value is high → one SMS;
  4. Exit on order_completed.

Coordinate frequency across channels so one person does not get three messages from three places in one hour.

What to measure

MetricMeaning
Push opt-in rateEligible visitors who subscribe
Delivery / clickNotification reach and CTR
Recovery ratePurchases after push click
Deny ratePrompt rejections (fix prompt placement)

If opt-in is weak, fix when you ask — do not rewrite notification body ten times first.

Quiet hours and brand consistency

Push can annoy at night too. For an Iran-heavy audience, avoid promotional pushes roughly 23:00–08:00 unless the event is truly transactional. The brand name in the title should match the site. If you are also running a big email blast, temporarily exclude active cart-recovery profiles so the same person is not hit twice with the same offer.

Common mistakes

  1. Permission prompt on first landing;
  2. Daily promo blasts via push instead of cart events;
  3. Linking to home;
  4. Ignoring Skip when there is no subscription;
  5. Treating push permission as SMS consent;
  6. Promising “push works like WhatsApp” — different channel.

FAQ

Can we send push without a mobile app?

Yes. Web push runs in the browser. Check iOS version and add-to-home-screen requirements.

What if the user hits Deny?

Do not pressure them in the same session. Strengthen email/mobile capture instead.

Is push enough for guests with no email?

If they subscribed, yes for reminders. You still need a number for later SMS.

Does CRA SMS law apply to push?

Push is not SMS, but you still need clear opt-in and an easy way to stop. Write your brand rules down.

How many templates do we need?

At least one for cart and one for back-in-stock; personalize with product name.

Why do we see Failed / “No push subscriptions”?

The visitor never allowed notifications or the subscription was not stored. Expect Skip/Fail and have the next channel ready.

Can we run recovery with push only?

For part of the audience, yes. For maximum recovery, a mix usually wins.

Does Leadara auto-host the service worker on every host?

You host the file on your domain and call Subscribe from the front end — see the Web Push docs.

Next step

On staging, install the service worker, subscribe with a test profile, build a one-step cart-push journey, then on production place the prompt after add-to-cart and measure only opt-in and clicks for a week.

Keep reading