Salve supply planner and subscriptions

The supply planner helps shoppers see how long an order will last. The shopper enters how many units they use each week, and the planner estimates the number of weeks or days. If the product has subscription options, the planner can also suggest a delivery interval.

The planner is a calculator for shopping. It always shows this note: "Estimate only. Follow the instructions for use and your healthcare professional's advice."

Add the planner

  1. Create the planner metafields. See the table below and the Health data setup guide.
  2. Enter at least Units per pack for the product.
  3. In the theme editor, add the Supply planner block to the Product information section, if it isn't there already. It's included in the Salve and Remedy product templates.

The planner shows only when the product has a value for health.units_per_pack.

Metafields the planner uses

Namespace and key Type Used for If empty
health.units_per_pack Integer The number of units in one pack, for example 10 dressings. The planner doesn't show.
health.unit_label Single line text The singular unit name, for example "dressing". No unit name.
health.unit_label_plural Single line text The plural unit name, for example "dressings". The theme never adds an "s" for you. The singular name is used.
health.default_uses_per_week Decimal The starting value of the slider. 7
health.usage_min_per_week Decimal The lowest value a shopper can choose. 1
health.usage_max_per_week Decimal The highest value a shopper can choose. 28

Choose a starting value that matches typical use described in your product's instructions. Shoppers can change it in steps of 0.5.

How the planner calculates

  1. Units in the order = units per pack × pack multiplier × quantity. The quantity comes from the product's quantity selector.
  2. Weeks = units in the order ÷ uses per week, rounded down to one decimal place.
  3. If the result is less than one week, the planner shows days instead: units in the order ÷ (uses per week ÷ 7), rounded down.

The result reads, for example: "This order lasts about 2.8 weeks at 3.5 dressings a week." It updates when the shopper changes the slider, the quantity or the variant.

Pack size variants

If a product comes in packs of different sizes, name the option Pack size, Pack or Quantity. The planner reads the first number in the selected option value and uses it as the pack multiplier. For other option names, the multiplier is 1.

The number is multiplied by Units per pack, so it should count packs, not units. Two ways to set this up:

  • Units per pack is 10, and the option values are "1 pack", "3 packs" and "6 packs". The planner counts 10, 30 and 60 units.
  • Units per pack is 1, and the option values are "10", "25" and "50". The planner counts 10, 25 and 50 units.

The same numbers give the estimated price per unit on product cards and in the Price block. That estimate shows only when the variant has no unit price set in Shopify, and it's labeled "about".

Delivery interval hints

With Suggest a delivery interval turned on, the planner reads the names of the product's selling plans. It suggests the plan with the longest interval that doesn't exceed the calculated supply. For example, if an order lasts 3.2 weeks and the plans are "Every 2 weeks" and "Every 4 weeks", it suggests every 2 weeks.

The hint reads, for example: "Deliver every 2 weeks to avoid running out." The matching option in the Purchase options block is highlighted. It's never selected for the shopper.

For the hint to show:

  • A subscription app must have created selling plans for the product.
  • The Purchase options block must be on the same product template.
  • At least one plan name must include an interval the planner can read.

Selling plan naming convention

The planner looks for a number followed by a day, week or month word. Write the number in digits, followed by a space and the word.

Language Day words Week words Month words Example plan name
English day, days week, weeks month, months Deliver every 2 weeks
French jour, jours semaine, semaines mois Livraison toutes les 2 semaines
German Tag, Tage, Tagen Woche, Wochen Monat, Monate, Monaten Lieferung alle 4 Wochen
Spanish día, días semana, semanas mes, meses Entrega cada 30 días
Italian giorno, giorni settimana, settimane mese, mesi Consegna ogni 2 mesi

Capital letters don't matter. A month counts as 4.345 weeks, and a day as one seventh of a week.

These names don't produce a hint, because they have no number in digits: "Weekly", "Monthly", "Every other week", "Fortnightly", "Every two weeks". Plans without a readable interval still work as normal subscription options.

Tip: if your subscription app lets you translate plan names, keep the number and interval word in each translation, for example "Toutes les 2 semaines".

Subscription apps

Salve works with any subscription app that creates Shopify selling plans, including Shopify's own Subscriptions app. The theme shows the plans, adds the chosen plan to the cart and shows the plan name in the cart. The app handles billing, delivery schedules and customer account features.

  • The Purchase options block shows only when the product has selling plans.
  • Preselect the first subscription option is off by default, so shoppers choose a subscription actively.
  • Product cards show a "Subscription available" badge on products with selling plans.
  • The Replenishment explainer section describes repeat deliveries in your own words. Only mention features your app supports, such as skipping or pausing a delivery.