Seller Profit Guard

How do you calculate margin on a fixed Shopify bundle?

Last updated: 2026-08-09

Written and reviewed by Seller Profit Guard Editorial Team.

The invented fixed bundle starts with USD 90 component retail value and subtracts a USD 15 bundle discount. From the USD 75 selling price, subtract USD 32 component cost, USD 8 fulfillment, USD 1 app cost, USD 3 expected return loss, and the unrounded payment cost for USD 28.52 contribution when displayed to cents.

fixed-bundle worksheet flow from offer and component evidence through costs to contribution, compatibility, decision, and restoration
Original fixed-bundle worksheet diagram using invented amounts and no customer records.

Attest the fixed-bundle configuration

The USD 28.52 fixture records an eligible store, installed bundle app, upgraded checkout, three fixed components, one maximum unit, two options, six variants, bundle and component SKUs, tracked inventory, supported channel, component shipping profiles, return boundary, parent price, and protected checkout.

Nine shared confirmations and the Scenario A confirmation must be yes before the cents are usable.

Run a malformed fixed-bundle counterexample

Replace 2.9 with 2.9%, enter three components as prose, use 2026-02-30, or set one confirmation to no. The packet Blocks and all nineteen derived outputs remain unavailable.

Correct one field at a time and preserve the failure. This demonstrates input and authority validation rather than formatting any coercible value.

Freeze the fixed-bundle components

The invented fixed bundle starts with USD 90 component retail value and subtracts a USD 15 bundle discount. From the USD 75 selling price, subtract USD 32 component cost, USD 8 fulfillment, USD 1 app cost, USD 3 expected return loss, and the unrounded payment cost for USD 28.52 contribution when displayed to cents. At checkpoint 1, the fixed-bundle worksheet records the accepted value or state, unit, source date, source owner, evidence maturity, rejected alternative, and whether the change affects selling price, component cost, payment, fulfillment, app, return reserve, contribution, target, compatibility, inventory, checkout, or decision.

Bind freeze the fixed-bundle components to one invented fixed Shopify bundle. Keep draft, active, tested, failed, changed, corrected, and restored states separate. If component, quantity, SKU, offer type, selling plan, currency, period, or cost convention changes, open a new packet rather than averaging unlike offers.

Total USD 90 retail value

The invented fixed bundle starts with USD 90 component retail value and subtracts a USD 15 bundle discount. From the USD 75 selling price, subtract USD 32 component cost, USD 8 fulfillment, USD 1 app cost, USD 3 expected return loss, and the unrounded payment cost for USD 28.52 contribution when displayed to cents. At checkpoint 2, the fixed-bundle worksheet records the accepted value or state, unit, source date, source owner, evidence maturity, rejected alternative, and whether the change affects selling price, component cost, payment, fulfillment, app, return reserve, contribution, target, compatibility, inventory, checkout, or decision.

Bind total usd 90 retail value to one invented fixed Shopify bundle. Keep draft, active, tested, failed, changed, corrected, and restored states separate. If component, quantity, SKU, offer type, selling plan, currency, period, or cost convention changes, open a new packet rather than averaging unlike offers.

Subtract the USD 15 offer discount

The invented fixed bundle starts with USD 90 component retail value and subtracts a USD 15 bundle discount. From the USD 75 selling price, subtract USD 32 component cost, USD 8 fulfillment, USD 1 app cost, USD 3 expected return loss, and the unrounded payment cost for USD 28.52 contribution when displayed to cents. At checkpoint 3, the fixed-bundle worksheet records the accepted value or state, unit, source date, source owner, evidence maturity, rejected alternative, and whether the change affects selling price, component cost, payment, fulfillment, app, return reserve, contribution, target, compatibility, inventory, checkout, or decision.

Bind subtract the usd 15 offer discount to one invented fixed Shopify bundle. Keep draft, active, tested, failed, changed, corrected, and restored states separate. If component, quantity, SKU, offer type, selling plan, currency, period, or cost convention changes, open a new packet rather than averaging unlike offers.

fixed-bundle worksheet: subtract the usd 15 offer discount
Original diagram for subtract the usd 15 offer discount without customer, order, or subscription data.

Build USD 32 component cost

The invented fixed bundle starts with USD 90 component retail value and subtracts a USD 15 bundle discount. From the USD 75 selling price, subtract USD 32 component cost, USD 8 fulfillment, USD 1 app cost, USD 3 expected return loss, and the unrounded payment cost for USD 28.52 contribution when displayed to cents. At checkpoint 4, the fixed-bundle worksheet records the accepted value or state, unit, source date, source owner, evidence maturity, rejected alternative, and whether the change affects selling price, component cost, payment, fulfillment, app, return reserve, contribution, target, compatibility, inventory, checkout, or decision.

Bind build usd 32 component cost to one invented fixed Shopify bundle. Keep draft, active, tested, failed, changed, corrected, and restored states separate. If component, quantity, SKU, offer type, selling plan, currency, period, or cost convention changes, open a new packet rather than averaging unlike offers.

Record USD 8 fulfillment

The invented fixed bundle starts with USD 90 component retail value and subtracts a USD 15 bundle discount. From the USD 75 selling price, subtract USD 32 component cost, USD 8 fulfillment, USD 1 app cost, USD 3 expected return loss, and the unrounded payment cost for USD 28.52 contribution when displayed to cents. At checkpoint 5, the fixed-bundle worksheet records the accepted value or state, unit, source date, source owner, evidence maturity, rejected alternative, and whether the change affects selling price, component cost, payment, fulfillment, app, return reserve, contribution, target, compatibility, inventory, checkout, or decision.

Bind record usd 8 fulfillment to one invented fixed Shopify bundle. Keep draft, active, tested, failed, changed, corrected, and restored states separate. If component, quantity, SKU, offer type, selling plan, currency, period, or cost convention changes, open a new packet rather than averaging unlike offers.

Allocate USD 1 app cost

The invented fixed bundle starts with USD 90 component retail value and subtracts a USD 15 bundle discount. From the USD 75 selling price, subtract USD 32 component cost, USD 8 fulfillment, USD 1 app cost, USD 3 expected return loss, and the unrounded payment cost for USD 28.52 contribution when displayed to cents. At checkpoint 6, the fixed-bundle worksheet records the accepted value or state, unit, source date, source owner, evidence maturity, rejected alternative, and whether the change affects selling price, component cost, payment, fulfillment, app, return reserve, contribution, target, compatibility, inventory, checkout, or decision.

Bind allocate usd 1 app cost to one invented fixed Shopify bundle. Keep draft, active, tested, failed, changed, corrected, and restored states separate. If component, quantity, SKU, offer type, selling plan, currency, period, or cost convention changes, open a new packet rather than averaging unlike offers.

Reserve USD 3 return loss

The invented fixed bundle starts with USD 90 component retail value and subtracts a USD 15 bundle discount. From the USD 75 selling price, subtract USD 32 component cost, USD 8 fulfillment, USD 1 app cost, USD 3 expected return loss, and the unrounded payment cost for USD 28.52 contribution when displayed to cents. At checkpoint 7, the fixed-bundle worksheet records the accepted value or state, unit, source date, source owner, evidence maturity, rejected alternative, and whether the change affects selling price, component cost, payment, fulfillment, app, return reserve, contribution, target, compatibility, inventory, checkout, or decision.

Bind reserve usd 3 return loss to one invented fixed Shopify bundle. Keep draft, active, tested, failed, changed, corrected, and restored states separate. If component, quantity, SKU, offer type, selling plan, currency, period, or cost convention changes, open a new packet rather than averaging unlike offers.

Calculate the unrounded payment cost

The invented fixed bundle starts with USD 90 component retail value and subtracts a USD 15 bundle discount. From the USD 75 selling price, subtract USD 32 component cost, USD 8 fulfillment, USD 1 app cost, USD 3 expected return loss, and the unrounded payment cost for USD 28.52 contribution when displayed to cents. At checkpoint 8, the fixed-bundle worksheet records the accepted value or state, unit, source date, source owner, evidence maturity, rejected alternative, and whether the change affects selling price, component cost, payment, fulfillment, app, return reserve, contribution, target, compatibility, inventory, checkout, or decision.

Bind calculate the unrounded payment cost to one invented fixed Shopify bundle. Keep draft, active, tested, failed, changed, corrected, and restored states separate. If component, quantity, SKU, offer type, selling plan, currency, period, or cost convention changes, open a new packet rather than averaging unlike offers.

Display USD 28.52 contribution

The invented fixed bundle starts with USD 90 component retail value and subtracts a USD 15 bundle discount. From the USD 75 selling price, subtract USD 32 component cost, USD 8 fulfillment, USD 1 app cost, USD 3 expected return loss, and the unrounded payment cost for USD 28.52 contribution when displayed to cents. At checkpoint 9, the fixed-bundle worksheet records the accepted value or state, unit, source date, source owner, evidence maturity, rejected alternative, and whether the change affects selling price, component cost, payment, fulfillment, app, return reserve, contribution, target, compatibility, inventory, checkout, or decision.

Bind display usd 28.52 contribution to one invented fixed Shopify bundle. Keep draft, active, tested, failed, changed, corrected, and restored states separate. If component, quantity, SKU, offer type, selling plan, currency, period, or cost convention changes, open a new packet rather than averaging unlike offers.

Compare 38.03% with the target

The invented fixed bundle starts with USD 90 component retail value and subtracts a USD 15 bundle discount. From the USD 75 selling price, subtract USD 32 component cost, USD 8 fulfillment, USD 1 app cost, USD 3 expected return loss, and the unrounded payment cost for USD 28.52 contribution when displayed to cents. At checkpoint 10, the fixed-bundle worksheet records the accepted value or state, unit, source date, source owner, evidence maturity, rejected alternative, and whether the change affects selling price, component cost, payment, fulfillment, app, return reserve, contribution, target, compatibility, inventory, checkout, or decision.

Bind compare 38.03% with the target to one invented fixed Shopify bundle. Keep draft, active, tested, failed, changed, corrected, and restored states separate. If component, quantity, SKU, offer type, selling plan, currency, period, or cost convention changes, open a new packet rather than averaging unlike offers.

Freeze the fixed-bundle components: control test 1

Change only the freeze the fixed-bundle components input in a synthetic fixture. Hold currency, period, payment convention, unrelated costs, target, owner, reviewer, compatibility statement, and evidence state constant. Show whether the change creates Block, Review, Ready, a new contribution difference, or only an explanatory note.

Correct the source, preserve both versions, rerun fixed-bundle and separate subscription-product fixtures, and reconcile after actual inventory, checkout, discount, provider fee, app charge, fulfillment, return, or renewal-order evidence arrives. The tool cannot access Shopify, create an offer, publish, or expose customer data.

fixed-bundle worksheet: freeze the fixed-bundle components: control test 1
Original diagram for freeze the fixed-bundle components: control test 1 without customer, order, or subscription data.

Total USD 90 retail value: control test 2

Change only the total usd 90 retail value input in a synthetic fixture. Hold currency, period, payment convention, unrelated costs, target, owner, reviewer, compatibility statement, and evidence state constant. Show whether the change creates Block, Review, Ready, a new contribution difference, or only an explanatory note.

Correct the source, preserve both versions, rerun fixed-bundle and separate subscription-product fixtures, and reconcile after actual inventory, checkout, discount, provider fee, app charge, fulfillment, return, or renewal-order evidence arrives. The tool cannot access Shopify, create an offer, publish, or expose customer data.

Subtract the USD 15 offer discount: control test 3

Change only the subtract the usd 15 offer discount input in a synthetic fixture. Hold currency, period, payment convention, unrelated costs, target, owner, reviewer, compatibility statement, and evidence state constant. Show whether the change creates Block, Review, Ready, a new contribution difference, or only an explanatory note.

Correct the source, preserve both versions, rerun fixed-bundle and separate subscription-product fixtures, and reconcile after actual inventory, checkout, discount, provider fee, app charge, fulfillment, return, or renewal-order evidence arrives. The tool cannot access Shopify, create an offer, publish, or expose customer data.

Build USD 32 component cost: control test 4

Change only the build usd 32 component cost input in a synthetic fixture. Hold currency, period, payment convention, unrelated costs, target, owner, reviewer, compatibility statement, and evidence state constant. Show whether the change creates Block, Review, Ready, a new contribution difference, or only an explanatory note.

Correct the source, preserve both versions, rerun fixed-bundle and separate subscription-product fixtures, and reconcile after actual inventory, checkout, discount, provider fee, app charge, fulfillment, return, or renewal-order evidence arrives. The tool cannot access Shopify, create an offer, publish, or expose customer data.

Record USD 8 fulfillment: control test 5

Change only the record usd 8 fulfillment input in a synthetic fixture. Hold currency, period, payment convention, unrelated costs, target, owner, reviewer, compatibility statement, and evidence state constant. Show whether the change creates Block, Review, Ready, a new contribution difference, or only an explanatory note.

Correct the source, preserve both versions, rerun fixed-bundle and separate subscription-product fixtures, and reconcile after actual inventory, checkout, discount, provider fee, app charge, fulfillment, return, or renewal-order evidence arrives. The tool cannot access Shopify, create an offer, publish, or expose customer data.

Allocate USD 1 app cost: control test 6

Change only the allocate usd 1 app cost input in a synthetic fixture. Hold currency, period, payment convention, unrelated costs, target, owner, reviewer, compatibility statement, and evidence state constant. Show whether the change creates Block, Review, Ready, a new contribution difference, or only an explanatory note.

Correct the source, preserve both versions, rerun fixed-bundle and separate subscription-product fixtures, and reconcile after actual inventory, checkout, discount, provider fee, app charge, fulfillment, return, or renewal-order evidence arrives. The tool cannot access Shopify, create an offer, publish, or expose customer data.

Reserve USD 3 return loss: control test 7

Change only the reserve usd 3 return loss input in a synthetic fixture. Hold currency, period, payment convention, unrelated costs, target, owner, reviewer, compatibility statement, and evidence state constant. Show whether the change creates Block, Review, Ready, a new contribution difference, or only an explanatory note.

Correct the source, preserve both versions, rerun fixed-bundle and separate subscription-product fixtures, and reconcile after actual inventory, checkout, discount, provider fee, app charge, fulfillment, return, or renewal-order evidence arrives. The tool cannot access Shopify, create an offer, publish, or expose customer data.

Calculate the unrounded payment cost: control test 8

Change only the calculate the unrounded payment cost input in a synthetic fixture. Hold currency, period, payment convention, unrelated costs, target, owner, reviewer, compatibility statement, and evidence state constant. Show whether the change creates Block, Review, Ready, a new contribution difference, or only an explanatory note.

Correct the source, preserve both versions, rerun fixed-bundle and separate subscription-product fixtures, and reconcile after actual inventory, checkout, discount, provider fee, app charge, fulfillment, return, or renewal-order evidence arrives. The tool cannot access Shopify, create an offer, publish, or expose customer data.

Display USD 28.52 contribution: control test 9

Change only the display usd 28.52 contribution input in a synthetic fixture. Hold currency, period, payment convention, unrelated costs, target, owner, reviewer, compatibility statement, and evidence state constant. Show whether the change creates Block, Review, Ready, a new contribution difference, or only an explanatory note.

Correct the source, preserve both versions, rerun fixed-bundle and separate subscription-product fixtures, and reconcile after actual inventory, checkout, discount, provider fee, app charge, fulfillment, return, or renewal-order evidence arrives. The tool cannot access Shopify, create an offer, publish, or expose customer data.

fixed-bundle worksheet: display usd 28.52 contribution: control test 9
Original diagram for display usd 28.52 contribution: control test 9 without customer, order, or subscription data.

Compare 38.03% with the target: control test 10

Change only the compare 38.03% with the target input in a synthetic fixture. Hold currency, period, payment convention, unrelated costs, target, owner, reviewer, compatibility statement, and evidence state constant. Show whether the change creates Block, Review, Ready, a new contribution difference, or only an explanatory note.

Correct the source, preserve both versions, rerun fixed-bundle and separate subscription-product fixtures, and reconcile after actual inventory, checkout, discount, provider fee, app charge, fulfillment, return, or renewal-order evidence arrives. The tool cannot access Shopify, create an offer, publish, or expose customer data.

Shopify Fixed Bundle Margin: A Worked Example: evidence lab 1

Reperform freeze the fixed-bundle components for the USD 28.52 fixed-bundle contribution and USD 19.81 separate subscription-product contribution. Display component value, discount, selling price, component cost, payment cost, fulfillment, app cost, return reserve, other cost, total variable cost, contribution, margin, target headroom, difference, compatibility, and decision.

Stress one driver at a time: component, quantity, SKU, inventory, channel, checkout, price, discount, payment fee, fulfillment, app allocation, return reserve, target, native-bundle compatibility, owner, reviewer, conflict, backup, or restoration. Exact cents cannot repair an unsupported configuration.

Shopify Fixed Bundle Margin: A Worked Example: evidence lab 2

Reperform total usd 90 retail value for the USD 28.52 fixed-bundle contribution and USD 19.81 separate subscription-product contribution. Display component value, discount, selling price, component cost, payment cost, fulfillment, app cost, return reserve, other cost, total variable cost, contribution, margin, target headroom, difference, compatibility, and decision.

Stress one driver at a time: component, quantity, SKU, inventory, channel, checkout, price, discount, payment fee, fulfillment, app allocation, return reserve, target, native-bundle compatibility, owner, reviewer, conflict, backup, or restoration. Exact cents cannot repair an unsupported configuration.

Shopify Fixed Bundle Margin: A Worked Example: evidence lab 3

Reperform subtract the usd 15 offer discount for the USD 28.52 fixed-bundle contribution and USD 19.81 separate subscription-product contribution. Display component value, discount, selling price, component cost, payment cost, fulfillment, app cost, return reserve, other cost, total variable cost, contribution, margin, target headroom, difference, compatibility, and decision.

Stress one driver at a time: component, quantity, SKU, inventory, channel, checkout, price, discount, payment fee, fulfillment, app allocation, return reserve, target, native-bundle compatibility, owner, reviewer, conflict, backup, or restoration. Exact cents cannot repair an unsupported configuration.

Shopify Fixed Bundle Margin: A Worked Example: evidence lab 4

Reperform build usd 32 component cost for the USD 28.52 fixed-bundle contribution and USD 19.81 separate subscription-product contribution. Display component value, discount, selling price, component cost, payment cost, fulfillment, app cost, return reserve, other cost, total variable cost, contribution, margin, target headroom, difference, compatibility, and decision.

Stress one driver at a time: component, quantity, SKU, inventory, channel, checkout, price, discount, payment fee, fulfillment, app allocation, return reserve, target, native-bundle compatibility, owner, reviewer, conflict, backup, or restoration. Exact cents cannot repair an unsupported configuration.

Shopify Fixed Bundle Margin: A Worked Example: evidence lab 5

Reperform record usd 8 fulfillment for the USD 28.52 fixed-bundle contribution and USD 19.81 separate subscription-product contribution. Display component value, discount, selling price, component cost, payment cost, fulfillment, app cost, return reserve, other cost, total variable cost, contribution, margin, target headroom, difference, compatibility, and decision.

Stress one driver at a time: component, quantity, SKU, inventory, channel, checkout, price, discount, payment fee, fulfillment, app allocation, return reserve, target, native-bundle compatibility, owner, reviewer, conflict, backup, or restoration. Exact cents cannot repair an unsupported configuration.

Shopify Fixed Bundle Margin: A Worked Example: evidence lab 6

Reperform allocate usd 1 app cost for the USD 28.52 fixed-bundle contribution and USD 19.81 separate subscription-product contribution. Display component value, discount, selling price, component cost, payment cost, fulfillment, app cost, return reserve, other cost, total variable cost, contribution, margin, target headroom, difference, compatibility, and decision.

Stress one driver at a time: component, quantity, SKU, inventory, channel, checkout, price, discount, payment fee, fulfillment, app allocation, return reserve, target, native-bundle compatibility, owner, reviewer, conflict, backup, or restoration. Exact cents cannot repair an unsupported configuration.

Official Shopify boundary for the fixed-bundle worksheet

Shopify documents bundle types, bundle-app and upgraded-checkout eligibility, component inventory behavior, SKU considerations, channels, returns, fixed-bundle creation, discounts, purchase options, subscription apps, and checkout behavior. Capture current pages and protected store evidence because plan, channel, app, eligibility, and workflow can change.

The controlling boundary is explicit: Shopify bundles are incompatible with purchase options, including subscriptions, preorders, and try-before-you-buy. A recurring box must be modeled as a separate subscription product and selling-plan packet, not as a native bundle with a purchase option.

Privacy, release, and restoration for the fixed-bundle worksheet

Use invented fixtures and aggregate evidence summaries only. Keep names, emails, addresses, order identifiers, payment details, subscription contracts, cancellation records, component inventory, SKUs, checkout captures, app bills, credentials, provider terms, and raw exports out of public pages and analytics.

Before indexing, pass type, unit, integration, build, content, similarity, metadata, image, link, privacy, accessibility, mobile, backup, deployment, and live checks. Search signals are later measurements; failed compatibility, inventory, checkout, ownership, or restoration evidence still stops release.

Sources and further reading

Related Seller Profit Guard tools

Next step: Open Seller Profit Guard.

This is operational planning help, not tax, accounting, legal, financial, or platform-policy advice. Review the Terms and disclaimer, and verify current platform rules and fee assumptions before changing prices.