ArrivesBy has two Delivery Promise blocks for product pages. Both are added from the Apps tab in the theme editor and both need the ArrivesBy app embed turned on (under App embeds).
Delivery Promise (Simple): one icon with a heading line, for example "Arrives by Oct 3 - 5".
Delivery Promise (Steps): a three-step timeline of Order, Ships and Arrives, each with its own icon, label and date.
Both blocks build their text from a short template. You write normal text and drop in variables in square brackets, like [delivery_range]. ArrivesBy replaces each variable with the real date for that shopper and product.
Delivery Promise (Simple): the lines you can edit
Heading: the main line, next to the icon. Always shows when a delivery estimate is available.
Subtext: an optional second line, for example "Order today, ships by [ship_range]".
Urgency: an optional line meant for the countdown, for example "Order within [countdown]".
Delivery location text: the line shown when "Show delivery location" is on, for example "Deliver to [location]".
Bold, italic and links are supported in all of these. Anything else you type or paste is removed for safety.
Delivery Promise (Steps): the settings you can edit
Steps shows three steps in a row. The dates are filled in for you: Order shows today's date, Ships shows the ship date (or range) and Arrives shows the delivery date (or range). A step is left out if its date isn't available.
Order label, Ship label and Arrival label: the short word above each date. They default to "Order", "Ships" and "Arrives". These are plain text, so variables don't work here. You can clear a label to show only the icon and date.
Order icon, Ship icon and Arrival icon: pick a built-in icon for each step.
Order icon image, Ship icon image and Arrival icon image: upload your own image. It replaces the built-in icon for that step.
Subtext: an optional line under the steps, for example "Ships by [ship_range]". It is empty by default.
Urgency: an optional line under the steps meant for the countdown, for example "Order within [countdown]". It is empty by default.
Show delivery location and Delivery location text: a line such as "Deliver to [location]" that lets shoppers see and change their location.
Show shipping policy: shows a link to your shipping policy. It needs a shipping policy set in your Shopify settings.
Under Style, Steps also lets you set the text and icon size, text, background, countdown and connector colors (the line joining the steps), text alignment and top and bottom spacing. Leave a color unset to use your theme's color.
Subtext and Urgency support bold, italic and links, the same as in Simple.
Variables
These work in the Simple Heading, Subtext and Urgency lines and in the Steps Subtext and Urgency lines. Steps has no Heading line.
Variable | What it shows | Heading (Simple only) | Subtext | Urgency | Location text |
[delivery_range] | Delivery date, or a range like "Oct 3 - 5". Shows a single date when the estimate is exact. | Yes | Yes | Yes | No |
[ship_range] | Ship date, or a range | Yes | Yes | Yes | No |
[order_date] | Today's date | Yes | Yes | Yes | No |
[delivery_min_date], [delivery_max_date] | The earliest and latest delivery date, for special wording such as "as early as [delivery_min_date]" | Yes | Yes | Yes | No |
[ship_min_date], [ship_max_date] | The earliest and latest ship date | Yes | Yes | Yes | No |
[countdown] | Time left to order for the shown ship date | No | Yes | Yes | No |
[location] | The shopper's place, such as "Beverly Hills, CA" or their country | No | No | No | Yes |
When a line does not show
[countdown] is not always available. Any line that uses it disappears when there is no countdown, and shows again when there is one. This includes:
when the next cutoff is more than 24 hours away (for example over a weekend, on a non-business day, or on a blackout date), or
when the countdown reaches zero. The page then refreshes the estimate on its own, and the line comes back if there is a new cutoff within 24 hours.
[location] needs the Scale plan or above and "Show delivery location" turned on.
Steps: a step is hidden if its date isn't available, and the whole block is hidden when there is no delivery estimate for the product.
Date and countdown formats
Under Style, choose a date format (Short, Medium, Long, Weekday short, Weekday long, Short numeric, Numeric or ISO) and a countdown format (Timer, Short, Medium or Long). Dates are shown in your shopper's language. The format applies to every date in the block, including the three step dates in Steps.
Dates follow your shopper's language
You choose the style, and ArrivesBy formats it the way the shopper's language does. That covers the month names, the order of day, month and year, the punctuation, and how a range of dates is written.
Ranges are shortened the way each language shortens them, and a range that starts and ends on the same day shows as a single date. As an example, here is [delivery_range] for October 3 to October 5, 2026:
Language | Short | Medium |
English (US) | Oct 3 – 5 | Oct 3 – 5, 2026 |
French | 3–5 oct. | 3–5 oct. 2026 |
German | 3.–5. Okt. | 3.–5. Okt. 2026 |
Japanese | 10/03~10/05 | 2026/10/03~2026/10/05 |
Korean | 10월 3일~5일 | 2026년 10월 3일~5일 |
Notice that French and German put the day before the month, English puts the month first, and Japanese and Korean use a tilde (~ or ~) between the two dates.
A range that crosses a month is written out in full, for example "Sep 30 – Oct 1" in English or "30 sept. – 1 oct." in French.
Exact wording and spacing can differ slightly between browsers and devices, because each one supplies its own language data.
The numeric styles follow the local order too. Short numeric shows "10/3" to an English (US) shopper and "03/10" to a French shopper, so a French shopper never mistakes it for March.
Need to change more?
See Custom CSS to change things like the icon color or corner radius.
