Embroidery Pricing Calculator
Info
Created On: October 1, 2023
Created By:
Tags
AI
Model: chatgpt-plugin
Time: 0 seconds
Prompt Tokens: 0
Completion Tokens: 0
Total Token Cost: 0
Get This App On Your Website
Copy Code
1. Copy the code above with the iframe and link.
2. Paste the code into your website.
3. Resize the iframe to fit your website.
Javascript, HTML, CSS Code
Copy
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript"> window.addEventListener('error', function(event) { var message = JSON.parse(JSON.stringify(event.message)); var source = event.filename; var lineno = event.lineno; var colno = event.colno; var error = event.error; window.parent.postMessage({ type: 'iframeError', details: { message: message, source: source, lineno: lineno, colno: colno, error: error ? error.stack : '' } }, '*'); }); window.addEventListener('unhandledrejection', function(event) { window.parent.postMessage({ type: 'iframePromiseRejection', details: { reason: event.reason } }, '*'); }); </script>
<title>Embroidery Pricing Calculator</title>
<meta description="Embroidery Pricing Calculator for Patch22 LLC">
<meta keywords="Embroidery, Pricing, Calculator, Patch22">
<script>
function calculatePrice() {
// Patch Size
const patchWidth = parseFloat(document.getElementById('patchWidth').value);
const patchHeight = parseFloat(document.getElementById('patchHeight').value);
// Thread
const spoolLengthYd = parseFloat(document.getElementById('spoolLengthYd').value);
const spoolCost = parseFloat(document.getElementById('spoolCost').value);
const designStitches = parseFloat(document.getElementById('designStitches').value);
// Average for standard 3.5" x 3" patch
const avgStitches = 24.634;
const avgTopThreadFt = 421.32;
const avgBobbinThreadFt = 150.58;
const standardPatchArea = 3.5 * 3;
const inputPatchArea = patchWidth * patchHeight;
// Calculate cost per stitch and thread used
const costPerStitch = spoolCost / (spoolLengthYd * 3 * avgStitches / avgTopThreadFt);
const threadLengthUsedFt = (designStitches / avgStitches) * (avgTopThreadFt * (inputPatchArea / standardPatchArea));
const bobbinLengthUsedFt = (designStitches / avgStitches) * (avgBobbinThreadFt * (inputPatchArea / standardPatchArea));
// Fabric
const fabricCostPerDesign = parseFloat(document.getElementById('fabricCostPerDesign').value);
// Stabilizer
const stabilizerYds = 50;
const stabilizerWidth = 23;
const stabilizerCost = 52;
const patchesPerStabilizer = 396;
const stabilizerCostPerDesign = stabilizerCost / patchesPerStabilizer;
// Velcro
const velcroCostPerPatch = parseFloat(document.getElementById('velcroCostPerPatch').value);
// Packaging
const packagingCosts = parseFloat(document.getElementById('packagingCosts').value);
// Calculate
const pricePerPatch = (costPerStitch * designStitches) + fabricCostPerDesign + stabilizerCostPerDesign + velcroCostPerPatch + packagingCosts + (threadLengthUsedFt * costPerStitch) + (bobbinLengthUsedFt * costPerStitch);
// Display
document.getElementById('result').innerHTML = 'Price per Patch: $' + pricePerPatch.toFixed(2) + '<br>Cost per Stitch: $' + costPerStitch.toFixed(6) + '<br>Stabilizer Cost per Design: $' + stabilizerCostPerDesign.toFixed(2) + '<br>Thread Used (ft): ' + threadLengthUsedFt.toFixed(2) + '<br>Bobbin Thread Used (ft): ' + bobbinLengthUsedFt.toFixed(2);
}
</script>
<link rel="canonical" href="https://calculator.tools/prompt/7303/">
<meta charset="utf-8">
</head>
<body>
<h1>Embroidery Pricing Calculator</h1>
<form>
<label for="patchWidth">Patch Width (in inches):</label>
<input type="number" id="patchWidth" placeholder="3"><br>
<label for="patchHeight">Patch Height (in inches):</label>
<input type="number" id="patchHeight" placeholder="3.5"><br>
<label for="spoolLengthYd">Spool Length (in yards):</label>
<input type="number" id="spoolLengthYd" placeholder="5500"><br>
<label for="spoolCost">Cost of Spool:</label>
<input type="number" id="spoolCost" placeholder="9.99"><br>
<label for="designStitches">Design Stitches:</label>
<input type="number" id="designStitches" placeholder="24.634"><br>
<label for="fabricCostPerDesign">Fabric Cost per Design:</label>
<input type="number" id="fabricCostPerDesign" placeholder="0.114"><br>
<label for="velcroCostPerPatch">Velcro Cost per Patch:</label>
<input type="number" id="velcroCostPerPatch" placeholder="0.07"><br>
<label for="packagingCosts">Packaging Costs:</label>
<input type="number" id="packagingCosts" placeholder="0.7"><br>
<input type="button" value="Calculate" onclick="calculatePrice()">
</form>
<h2 id="result"></h2>
<script type="text/javascript"> var localStoragePrefix = "ct-{{ cachebreaker }}"; var lastSave = 0; function saveLocal(data) { if (Date.now() - lastSave < 1000) { return; } let cookie = localStoragePrefix + "=" + JSON.stringify(data) + "; path=" + window.location.pathname + "'; SameSite=Strict"; cookie += "; expires=" + new Date(Date.now() + 1000 * 60 * 60 * 24 * 365 * 1000).toUTCString(); document.cookie = cookie; lastSave = Date.now(); } function loadLocal() { var cookiePrefix = localStoragePrefix + "="; var cookieStart = document.cookie.indexOf(cookiePrefix); if (cookieStart > -1) { let cookieEnd = document.cookie.indexOf(";", cookieStart); if (cookieEnd == -1) { cookieEnd = document.cookie.length; } var cookieData = document.cookie.substring(cookieStart + cookiePrefix.length, cookieEnd); return JSON.parse(cookieData); } } </script>
<script type="text/javascript"> window.addEventListener('load', function() { var observer = new MutationObserver(function() { window.parent.postMessage({height: document.documentElement.scrollHeight || document.body.scrollHeight},"*"); }); observer.observe(document.body, {attributes: true, childList: true, subtree: true}); window.parent.postMessage({height: document.documentElement.scrollHeight || document.body.scrollHeight},"*"); }); </script>
</body>
</html>