Margin and Quote Calculator

Check target EXW prices, distinguish margin from markup, and confirm required costs before copying an indicative EXW or FOB quotation.

How to use this tool

Use the current BOM or enter a manual factory cost, then choose margin or markup and review EXW additions, FOB charges and currency. Optionally enter a target EXW price in the project currency to see the price gap and allowed cost. Leave the target blank when you only need a quotation. Valid draft numbers remain available while cost coverage is unconfirmed. Resolve invalid or pending costs and confirm coverage before copying the final quotation.

BOM-based quotes use the BOM contingency percentage on recurring costs and retain the selected one-time amortization. A manual cost uses its own contingency percentage. Enter a manual recurring cost and keep separately charged one-time fees outside that input.

Price basis = estimated unit cost + EXW additions. A gross-margin price divides this basis by (1 - margin); a markup price multiplies it by (1 + markup). For example, 20% markup on 40 gives 48, while a 20% gross margin gives 50. These are pricing assumptions on the entered cost basis, not net profit or realized earnings.

The target is an EXW price, before local FOB charges. Its allowed cost reverses the selected pricing method and accounts for EXW additions, recurring contingency and any selected amortization. A target that cannot cover those charges requires a different scope or pricing assumption. FOB is an indicative EXW price plus the entered local FOB charges; this tool does not calculate destination duties or a full landed cost.

Worked example

Fictional values in one currency: recurring cost 10 per product, one-time fees 2,400, production and amortization quantities both 1,200, and recurring contingency 4%. Estimated unit cost is 10 x 1.04 + 2,400 / 1,200 = 12.40. At a 20% gross margin with no EXW additions, EXW is 15.50. The first-batch budget is 10 x 1.04 x 1,200 + 2,400 = 14,880.

If amortization is left blank on the one-time BOM line, estimated unit cost is 10.40 and EXW is 13.00, with the one-time fees charged separately. The first-batch budget remains 14,880. Unit amortization changes cost recovery, not how often the fee is paid.

Confirm required costs

Review the coverage checklist even when the entered lines already add up. Identify where each required cost is included, or explicitly confirm that it is not required. This catches an unreviewed category that might have no cost line yet. A manual factory total has its own confirmation: state which costs are included in that total. Switching to manual cost does not bypass coverage review.

Valid calculations remain visible as drafts while coverage is unconfirmed. Final BOM summaries and quotations can be copied only when the cost inputs are valid, pending reviews are resolved and required coverage is confirmed. Individual component calculators remain usable during this review. Confirmation records your assessment; it does not verify a supplier offer or turn an indicative estimate into a firm quotation.

Assumptions and limits

These tools support early planning. Example values and rough presets are not live market prices, safety approvals, DFM results or supplier quotations. Replace them with verified project inputs. Calculations require JavaScript; this reference remains readable without it.

Your first visit starts with a blank project. Enter your own costs or explicitly load the fictional example project. New Project creates another blank project; existing saved projects keep their entered costs. Before replacing a project, download a full backup to retain its inputs and saved scenarios.

A known zero cost is valid. A missing or invalid required value needs correction, and a pending quote remains unresolved. Items marked not required or included elsewhere are not charged here. Known partial subtotals may still be displayed, but incomplete results cannot be added to the BOM or copied as a complete quotation. Check exclusions so a cost included elsewhere is actually counted once.

Adding a calculator result saves a BOM snapshot. If you change its source inputs, the imported line is marked pending and its previous cost is kept for review. Add to BOM refreshes the same source line, unless you have adopted a supplier alternative. In that case, explicitly reconfirm the adopted quote or switch back to the calculated estimate. Adding several electronics variants does not select one automatically; mark unused alternatives as not required.

Project values and saved scenarios stay in this browser using local storage. Downloaded backups contain your entered project data; no calculator input or project file is uploaded. Clearing browser storage can remove the local project and scenarios, so keep an independent backup. Starting a new project or loading the example replaces the current local project after confirmation. Separate analytics can count page visits and fixed action names without costs, supplier details, project or scenario names, backup contents or copied text. Your existing analytics privacy choice applies; see the Privacy Policy.

Next step

Review the BOM and first-batch budget.

Read about cost and quotation decisions. For a specific development question, see how Ask ToyRD works.

Available calculators

Release notes

0.5.0 · September 11, 2026: Added Silicone & Rubber and Printing & Decoration calculations. Silicone material loss applies only to material cost. Printing operation costs and one-time setup fees enter the BOM separately, with optional setup amortization. All nine calculators have their own help, search metadata and sitemap entries.

First-time use and New Project start with blank project costs; loading the fictional example is an explicit choice. Existing v2 amounts, scenarios and supplier records remain available while optional fields are added. Tool and navigation labels no longer carry release status badges. Planning assumptions, required-cost review and quotation limits remain in place. No project data is uploaded.

0.4.0 · September 10, 2026: Added required-cost confirmation before copying final BOM summaries or quotations, including separate review of manual factory totals. Valid draft calculations remain available while coverage is unconfirmed. Added named project scenarios with saved metrics and formula versions, two-scenario comparison, restore and delete, and validated JSON backup download and restoration. Restored inputs use current formulas; different currencies are not directly subtracted.

Supplier alternatives now cover whole BOM lines, with specification, MOQ, tax, freight and manual currency review before adoption. Adoption saves the previous project as a scenario. Adopted prices remain protected during calculator refreshes and require explicit reconfirmation or a switch back to the estimate. Required save and restore failures preserve the existing project. All project and backup data stays local. Earlier releases remain in version control and private deployment backups.

0.3.0 · September 10, 2026: Added Assembly & Labor, first-batch budgeting and target EXW checks. Contingency now applies to recurring costs only; BOM-based quotes share the BOM rate, and one-time fees can remain separate or be amortized. Missing, invalid and pending costs require review before reuse or quotation copying. Source edits mark imported BOM snapshots pending until refreshed. Wide tables scroll within the page on mobile. Existing local projects are retained, with new optional fields added. No project data is uploaded.

Changing a currency pair clears its manual exchange rate. If browser storage cannot save a project, a persistent message asks you to copy needed results before leaving. Custom mold and variant buttons are excluded from analytics, and supplier-mode mold quotes are validated independently of inactive estimator inputs, including in migrated projects.

0.2.4 · September 7, 2026: Added readable tool instructions, related articles and consistent navigation. Each available calculator now has its own search metadata. Calculation formulas and saved-project format are unchanged. Earlier releases remain in version control and private deployment backups.