Contact Sales & After-Sales Service

Contact & Quotation

  • Inquire: Call 0086-755-23203480, or reach out via the form below/your sales contact to discuss our design, manufacturing, and assembly capabilities.
  • Quote: Email your PCB files to [email protected] (Preferred for large files) or submit online. We will contact you promptly. Please ensure your email is correct.
Drag & Drop Files, Choose Files to Upload You can upload up to 3 files.

Notes:
For PCB fabrication, we require PCB design file in Gerber RS-274X format (most preferred), *.PCB/DDB (Protel, inform your program version) format or *.BRD (Eagle) format. For PCB assembly, we require PCB design file in above mentioned format, drilling file and BOM. Click to download BOM template To avoid file missing, please include all files into one folder and compress it into .zip or .rar format.

<a href="https://pcbsync.com/pcb-manufacturing-cost/" data-wpel-link="internal">PCB Cost</a> Calculator | Free Instant Bare-Board Price Estimator — PCBSync
PCB Manufacturing · Free Pricing Tool

PCB Cost Calculator

Estimate your bare-board fabrication price the instant you change a parameter — with live panel utilization, volume price-breaks and cost-saving tips most calculators don't show. Then send your Gerbers for an exact quote.

Need the cost factors explained, or assembly pricing? See PCB Manufacturing Cost and PCB Assembly Cost Calculator.
Free · no sign-up mm / inch · panel utilization 1–56 layers, FR4 to RF & flex

Board specifications

Layers
Board sizefinished dimensions
Width (mm)
×
Height (mm)
Quantityboards
Base material
Copper weight
Lead time
Surface finish
Min trace / space
Via technology
Board thickness (mm)
Min hole (mm)
Solder-mask colour
Advanced options
Estimated fabrication cost
$—
order total · bare board only, excl. assembly
$—
per board
$—
tooling (one-time)
—
board area
—
boards / panel

Breakdown Standard board

Tooling / NRE (one-time)$0
Laminate, layers & copper$0
Surface finish & mask$0
Special features$0
Bare-board fabrication only — components, assembly and shipping are quoted separately. Final price is confirmed from your Gerber files.
Get exact price — send files

Cost-saving suggestions

Live design-for-manufacturing tips based on your current specs — tap Apply to update the calculator instantly.

Your per-board cost at every volume

Fixed tooling spreads across more boards as quantity rises. The orange bar is your selected quantity — updates live with your specs.
How it works

From slider to exact quote in three steps

This calculator is built for fast tradeoff work — compare stackups, quantity bands and lead-time pressure before a formal quotation. The number is directional until our engineers review your files and panel strategy.

1

Configure your board

Set layers, size, material, finish, copper, vias and quantity. Every change re-prices instantly — no sign-up, no waiting.

2

Optimize & compare

Use the live cost-saving tips and volume chart to find the cheapest spec and batch size for your design.

3

Send files for the exact price

Email your estimate or upload Gerbers for a firm, parts-aware quote with a free DFM review.

Want every cost lever explained in depth?
Our guide covers layers, materials, vias, tolerances and volume — and how each one moves the price.

Read PCB Manufacturing Cost

Lock in your exact board price

The calculator gets you the fabrication ballpark. Send your Gerbers and our engineers return a firm quote with a free design-for-manufacturing review.

Upload your GerbersRS-274X + drill file in a .zip — best for an exact, spec-checked quote.
Email your estimateOne click sends your full configuration to [email protected].
Talk to an engineer+86-755-23203480 or WhatsApp — stackup, DFM & lead-time help.

Request your exact quote

Your calculator settings attach automatically.
Or upload files →
Opens your email app with the estimate prefilled.
Answers

PCB cost calculator — FAQ

It's completely free and needs no sign-up or email to estimate — change a parameter and the price updates instantly. You only share contact details when you want a firm, file-checked quote.

It estimates bare-board fabrication: a one-time tooling charge plus a per-board price from layer count, board size, material, copper weight, surface finish, solder-mask colour, thickness, minimum trace and hole sizes, via technology, impedance and quantity. Components, assembly and shipping are quoted separately.

It's a realistic budgetary figure modeled on real fabrication parameters and is ideal for comparing stackups, quantity bands and lead-time tradeoffs. The exact price is confirmed once our engineers review your Gerbers and panel strategy.

PCBs are produced on larger working panels and then separated. Efficient PCB panelization can reduce unused material, but assembly rails, tooling features and separation clearances also consume space. Use the calculator to compare board size and quantity, then confirm the production panel with the fabricator before treating the estimate as a final price.

Use the email button to send your configuration to our engineers, or upload your Gerber and drill files through the contact form. Every quote includes a free design-for-manufacturing review and comes back promptly.

Got your number? Make it exact.

Send your Gerbers for a firm fabrication quote and a free design-for-manufacturing review. 1 to 56 layers, FR4 to RF and flex, prototype to production.

Copied to clipboard
'+qtyLabel(p.q)+' pcs'+(cur?'you':'')+''; host.appendChild(d); }); } // ---- cost-saving tips ---- function renderTips(){ var base=priceOf(S).total, list=[]; function add(ov,label,desc,save){ list.push({label:label,desc:desc,save:save,ov:ov}); } function sav(fn){var c=clone();fn(c);return (base-priceOf(c).total)/base;} if(S.trace<6){var s=sav(function(c){c.trace=6;});if(s>0.03)add({type:'seg',key:'trace',val:6},'Relax min trace/space to 6 mil','Standard geometry, far better yield',s);} if(S.layers>2){var nl=S.layers-2;var s2=sav(function(c){c.layers=nl;});if(s2>0.03)add({type:'seg',key:'layers',val:nl},'Route in '+nl+' layers if possible','Fewer lamination cycles',s2);} if(['enig','silver','hardgold'].indexOf(S.finish)>-1){var s3=sav(function(c){c.finish='hasl';});if(s3>0.03)add({type:'seg',key:'finish',val:'hasl'},'Use HASL finish','If no fine-pitch/BGA flatness needed',s3);} if(S.via==='hdi'){var s4=sav(function(c){c.via='through';});if(s4>0.03)add({type:'seg',key:'via',val:'through'},'Use through-hole vias (no HDI)','Avoids sequential lamination',s4);} if(S.material!=='fr4'){var s5=sav(function(c){c.material='fr4';});if(s5>0.03)add({type:'seg',key:'material',val:'fr4'},'Switch to standard FR4','If your spec allows',s5);} if(S.opt.impedance){var s6=sav(function(c){c.opt.impedance=false;});if(s6>0.03)add({type:'opt',key:'impedance',val:false},'Drop controlled impedance','Only if not signal-critical',s6);} if(S.opt.gold){var s7=sav(function(c){c.opt.gold=false;});if(s7>0.03)add({type:'opt',key:'gold',val:false},'Remove gold fingers','If no edge connector',s7);} if(S.mask!=='green'){var s8=sav(function(c){c.mask='green';});if(s8>0.02)add({type:'seg',key:'mask',val:'green'},'Use green solder mask','Standard colour, lowest cost',s8);} if(S.hole<0.3){var s9=sav(function(c){c.hole=0.3;});if(s9>0.03)add({type:'seg',key:'hole',val:0.3},'Relax min hole to 0.30 mm','Standard mechanical drilling',s9);} // quantity tip (per-board) var bands=[5,25,50,100,250,500,1000],nb=null; for(var i=0;iS.qty){nb=bands[i];break;}} if(nb){var pbBase=priceOf(S).perBoard;var cc=clone();cc.qty=nb;var pbAlt=priceOf(cc).perBoard;var qs=(pbBase-pbAlt)/pbBase;if(qs>0.06)list.push({label:'Order '+nb.toLocaleString('en-US')+' pcs',desc:'Per-board drops as tooling spreads',save:qs,ov:{type:'qty',val:nb}});} list.sort(function(a,b){return b.save-a.save;}); list=list.slice(0,4); var host=$('ps_tips'); host.innerHTML=''; if(list.length===0){ host.innerHTML='
Your configuration is already cost-optimised for these specs. Adjust above to explore tradeoffs.
'; return; } list.forEach(function(t){ var row=document.createElement('div'); row.className='ps-tip'; row.innerHTML=''+ ''+t.label+' · '+t.desc+''+ '−'+Math.round(t.save*100)+'%'+ ''; row.querySelector('.ps-tip-apply').addEventListener('click',function(){applyTip(t.ov);}); host.appendChild(row); }); } function setSegActive(key,val){ var grp=root.querySelector('[data-seg="'+key+'"]'); if(!grp)return; grp.querySelectorAll('button').forEach(function(b){b.classList.toggle('ps-on',String(b.getAttribute('data-val'))===String(val));}); S[key]=(isNaN(val)?val:parseFloat(val)); } function setOptActive(key,val){ var lab=root.querySelector('#ps_opts .ps-opt[data-opt="'+key+'"]'); S.opt[key]=val; if(lab) lab.classList.toggle('ps-on',val); } function applyTip(ov){ if(ov.type==='seg') setSegActive(ov.key,ov.val); else if(ov.type==='opt') setOptActive(ov.key,ov.val); else if(ov.type==='qty') setField('qty',ov.val); render(); } // single-select groups root.querySelectorAll('[data-seg]').forEach(function(seg){ var key=seg.getAttribute('data-seg'); seg.addEventListener('click',function(e){ var b=e.target.closest('button'); if(!b)return; seg.querySelectorAll('button').forEach(function(x){x.classList.remove('ps-on');}); b.classList.add('ps-on'); var v=b.getAttribute('data-val'); S[key]=(v===''||isNaN(v))?v:parseFloat(v); render(); }); }); // unit toggle function fmtSize(mm){ return S.unit==='mm'?String(Math.round(mm)):(mm/25.4).toFixed(2); } function showSize(){ $('ps_x').value=fmtSize(S.x); $('ps_y').value=fmtSize(S.y); var u=S.unit; $('ps_su_x').textContent='Width ('+u+')'; $('ps_su_y').textContent='Height ('+u+')'; } root.querySelector('[data-unit]').addEventListener('click',function(e){ var b=e.target.closest('button'); if(!b)return; this.querySelectorAll('button').forEach(function(x){x.classList.remove('ps-on');}); b.classList.add('ps-on'); S.unit=b.getAttribute('data-val'); showSize(); render(); }); // numeric inputs + steppers function clampMm(v){v=isNaN(v)?5:v;return Math.min(600,Math.max(5,v));} function setSize(k,mm){ S[k]=Math.round(clampMm(mm)); showSize(); render(); } ['x','y'].forEach(function(k){ var inp=$('ps_'+k); inp.addEventListener('blur',function(){ var val=parseFloat((inp.value||'').replace(/[^0-9.]/g,'')); var mm=S.unit==='mm'?val:val*25.4; setSize(k,mm); }); }); var qFld={qty:{min:1,max:100000}}; function setField(k,v){ if(k==='qty'){v=isNaN(v)?1:Math.min(100000,Math.max(1,Math.round(v)));S.qty=v; var inp=$('ps_qty');if(inp)inp.value=v.toLocaleString('en-US'); var rg=$('ps_qty_range');if(rg)rg.value=Math.min(2000,v); root.querySelectorAll('[data-presets="qty"] button').forEach(function(b){b.classList.toggle('ps-on',parseInt(b.getAttribute('data-val'),10)===v);}); render();} } var qi=$('ps_qty'); qi.addEventListener('input',function(){var n=parseInt((qi.value||'').replace(/[^0-9]/g,''),10);S.qty=isNaN(n)?1:Math.min(100000,Math.max(1,n));var rg=$('ps_qty_range');if(rg)rg.value=Math.min(2000,S.qty);render();}); qi.addEventListener('blur',function(){setField('qty',parseInt((qi.value||'').replace(/[^0-9]/g,''),10));}); root.querySelectorAll('[data-step]').forEach(function(btn){ btn.addEventListener('click',function(){ var k=btn.getAttribute('data-step'),d=parseInt(btn.getAttribute('data-d'),10); if(k==='x'||k==='y'){var deltaMm=(S.unit==='mm'?5:2.54)*d;setSize(k,S[k]+deltaMm);} else setField('qty',(S.qty||0)+d); }); }); var qr=$('ps_qty_range'); if(qr) qr.addEventListener('input',function(){setField('qty',parseInt(qr.value,10));}); root.querySelectorAll('[data-presets="qty"] button').forEach(function(b){b.addEventListener('click',function(){setField('qty',parseInt(b.getAttribute('data-val'),10));});}); // options root.querySelectorAll('#ps_opts .ps-opt').forEach(function(o){ o.addEventListener('click',function(){var k=o.getAttribute('data-opt');S.opt[k]=!S.opt[k];o.classList.toggle('ps-on',S.opt[k]);render();}); }); // export: summary, email, copy, print function matLabel(m){return {fr4:'FR4',hightg:'FR4 High-Tg',alu:'Aluminum (MCPCB)',rogers:'Rogers/RF',flex:'Flex (polyimide)'}[m]||m;} function finLabel(f){return {hasl:'HASL',leadfree:'Lead-free HASL',enig:'ENIG',osp:'OSP',silver:'Immersion Silver',hardgold:'Hard Gold'}[f]||f;} function summary(){ var r=priceOf(S),p=panel(),L=[]; L.push('--- PCB FABRICATION ESTIMATE (PCBSync) ---'); L.push('Layers: '+S.layers+' | Size: '+S.x+' x '+S.y+' mm | Qty: '+S.qty); L.push('Material: '+matLabel(S.material)+' | Copper: '+S.copper+' oz | Thickness: '+S.thickness+' mm'); L.push('Surface finish: '+finLabel(S.finish)+' | Solder mask: '+S.mask); L.push('Min trace/space: '+S.trace+' mil | Min hole: '+S.hole+' mm | Vias: '+(S.via==='hdi'?'Blind/buried (HDI)':'Through-hole')); var opts=[];if(S.opt.impedance)opts.push('controlled impedance');if(S.opt.viaInPad)opts.push('via-in-pad');if(S.opt.gold)opts.push('gold fingers'); L.push('Options: '+(opts.length?opts.join(', '):'none')+' | Lead time: '+(S.lead==='rush'?'24-48h rush':S.lead==='expedited'?'5-7d':'standard')); L.push('Panel utilization: '+p.n+' boards/panel ('+Math.round(p.util)+'%)'); L.push(''); L.push('Estimated fabrication cost (bare board only): '+moneyRange(r.total)); L.push('Per board: '+perRange(r.perBoard)+' | Tooling (one-time): '+money(r.nreOnce)); L.push(''); L.push('Please send me an exact bare-board quote. I will attach my Gerber + drill files.'); return L.join('\n'); } function openMail(extra){ var body=(extra?extra+'\n\n':'')+summary(); var subj='PCB Fabrication Quote — '+S.layers+'L, '+S.x+'x'+S.y+'mm, '+S.qty+' pcs'; window.location.href='mailto:[email protected]?subject='+encodeURIComponent(subj)+'&body='+encodeURIComponent(body); } var mb=$('ps_mailto'); if(mb) mb.addEventListener('click',function(){openMail('');}); var toast=$('ps_toast'); function showToast(msg){toast.textContent=msg;toast.classList.add('show');setTimeout(function(){toast.classList.remove('show');},1800);} var cp=$('ps_copy'); if(cp) cp.addEventListener('click',function(){ var txt=summary(); if(navigator.clipboard&&navigator.clipboard.writeText){navigator.clipboard.writeText(txt).then(function(){showToast('Results copied to clipboard');},function(){showToast('Press Ctrl+C to copy');});} else{showToast('Copy not supported here');} }); var pr=$('ps_print'); if(pr) pr.addEventListener('click',function(){window.print();}); var form=$('ps_form'); if(form) form.addEventListener('submit',function(e){ e.preventDefault();var L=[],g=function(id){return $(id).value;}; if(g('ps_f_name'))L.push('Name: '+g('ps_f_name'));if(g('ps_f_company'))L.push('Company: '+g('ps_f_company')); if(g('ps_f_email'))L.push('Email: '+g('ps_f_email'));if(g('ps_f_phone'))L.push('Phone/WhatsApp: '+g('ps_f_phone')); if(g('ps_f_msg'))L.push('Details: '+g('ps_f_msg')); openMail(L.join('\n')); }); // faq root.querySelectorAll('#ps_faq .ps-q').forEach(function(q){ q.querySelector('.ps-q-btn').addEventListener('click',function(){ var open=q.classList.contains('ps-open'),body=q.querySelector('.ps-q-body'); root.querySelectorAll('#ps_faq .ps-q').forEach(function(o){o.classList.remove('ps-open');o.querySelector('.ps-q-body').style.maxHeight=null;}); if(!open){q.classList.add('ps-open');body.style.maxHeight=body.scrollHeight+'px';} }); }); // smooth scroll root.querySelectorAll('a[href^="#ps_"]').forEach(function(a){ a.addEventListener('click',function(e){var t=document.querySelector(a.getAttribute('href'));if(t){e.preventDefault();t.scrollIntoView({behavior:reduce?'auto':'smooth',block:'start'});}}); }); showSize(); render(); })();