塑膠射出成型開模成本?防水外殼量產的成本怎麼算

Published on: | Last updated:

塑膠射出...嗯...這題目有點硬。很多人問,但水很深。

特別是防水外殼,這東西不是「做出來就好」。差一點,就全功盡棄。

先說結論:模具費是門檻,量產才是重點

簡單講,你的總成本 = 一大筆「模具費」 + N件 x「產品單價」。

模具費,就是開模的錢,一次性的。幾萬到幾十萬台幣都有可能,看複雜度。 這筆錢是跑不掉的,算是入場券。

然後是量產的單價,這個就跟你的量有關。量大,單價就低,因為模具費可以攤分到每一件產品上。

所以,還沒想好要賣多少個之前,問單價意義不大。

一個防水外殼的例子

我們想像一個情境:一個給戶外用的溫濕度感測器外殼。

尺寸不大,像個肥皂盒。但要求要到 IP67 等級。

IP67,意思是要完全防塵,還能在水下1米撐30分鐘。 這對塑膠外殼的精度要求就很高了。

它可能會有:

  • 上下蓋。
  • 中間的防水膠圈。
  • 鎖螺絲的銅柱。
  • 透明的顯示窗。

你看,一個簡單的盒子,拆開來就好幾個部分。每個部分可能都要開模,或者做「二次加工」。這些都是成本。

防水外殼的結構示意
防水外殼的結構示意

成本怎麼拆解?

好,那我們來細算一下這筆帳。主要就是兩大塊。

第一塊:開模費 (一次性投入)

這筆錢最頭痛,因為是先生產前就要付掉的。工廠報價時,會看幾個東西:

  • 模具大小與複雜度:你的殼子越大、越多機關(像滑塊、斜銷),模具就越複雜、越貴。
  • 模穴數 (Cavitation):一組模具一次可以生產幾個產品?一出一?還是一出四?一出多的模具當然貴,但生產效率高,可以壓低單價。
  • 模具鋼材:這是最容易被忽略的。想模具壽命長、穩定,就要用好一點的鋼,像是 NAK80 或 S136。 如果只是想打樣幾千個,用便宜的鋁模或 P20 鋼也可以,但壽命就短。 防水件要求高,建議還是用好點的鋼材,尺寸比較穩定。
  • 澆道設計:熱澆道比冷澆道貴,但材料浪費少,成品質感也比較好。

對於一個肥皂盒大小的防水外殼,如果結構不算太刁鑽,用中等水準的鋼材,一出一或一出二,模具費大概會落在台幣 15 萬到 40 萬之間。這只是一個很粗略的估計。

射出機台與模具
射出機台與模具

第二塊:產品單價 (量產時的費用)

單價的計算公式,大概是這樣:

單價 = 材料費 + 加工費 + (二次加工 + 包裝 + 運輸) + 利潤

細分來看:

  • 材料費:用什麼塑膠料?PC?ABS?還是混料的 PC+ABS? 要不要加玻璃纖維增加強度? 防水件有時候還會用到 TPE 這種軟膠做二次包覆射出。料的價格,每天都在浮動。
  • 加工費:這跟「射出機台噸數」和「生產週期 (Cycle Time)」有關。 你的殼越大,需要的機台噸數就越大,費用越高。生產一個殼要花幾秒?時間越長,費用也越高。
  • 二次加工:這項目很雜。比如要在殼上鑽孔、埋入銅螺母、做超音波焊接讓上下蓋密合、表面印刷 LOGO、或是噴漆增加質感...這些都是額外的錢。 以我們的防水殼來說,防水膠圈的安裝、氣密測試,都可能算在這一塊。

攤提...這個比較像會計上的做法。簡單說,就是把幾十萬的模具費,分攤到幾萬、幾十萬個產品上。 比如你模具花了 20 萬,預計生產 10 萬個,那每個產品就要多分攤 2 塊錢的模具成本。

廉價開模 vs. 專業防水開模
項目 廉價省錢做法 專業防水做法
模具鋼材 就...堪用的鋼材。P20 或甚至鋁模。壽命不長,幾萬模可能就差不多了。 會用好一點的。像 NAK80 或 S136H (抗腐蝕)。尺寸穩定,撐個 50 萬模以上沒問題。
模具設計 大概做個樣子,公差抓很鬆。先求有,再求好。 一定會做模流分析。 考慮到膠圈壓縮比、外殼變形、水路散熱... T0 試模成功率高很多。
防水設計 可能就一條溝槽,讓你塞個 O-ring。尺寸對不對...有點碰運氣。 膠圈的溝槽設計很講究,深度、寬度、倒角都有計算過,確保壓縮率在 15-30% 之間。
後續問題 漏水、變形、毛邊一堆。改模改到天荒地老,花的錢可能比當初省的還多。 初期投入高,但量產穩定。不良率低,省去很多客訴跟售後麻煩。

如果量不大,怎麼辦?

很多人卡在這邊。我有個好點子,但沒把握賣幾萬個,開模幾十萬下不去手,怎麼辦?

這時候可以考慮一些替代方案。比如說,先用 3D 列印做幾十個樣品,驗證市場反應。現在的 3D 列印技術已經很成熟了。

另外,台灣很多中小型的射出廠,其實很靈活。 你可以試著跟老闆談談,看有沒有可能用比較便宜的「試模模具」(Soft Tooling) 或共用模座的方式,來降低初期的開模費用。

這點跟國外一些大型廠商很不一樣。像美國的 Protolabs,他們網站有很方便的線上報價系統,你上傳 3D 圖,馬上可以看到價格。 但他們流程很標準化,比較沒得談。台灣的工廠則是「人」味比較重,很多事情是坐下來喝杯茶、聊出來的。 你如果展現誠意,而且設計有考慮到生產性,老師傅們有時候會願意幫你想辦法。

良品與不良品的細節差異
良品與不良品的細節差異

那些沒人說的坑

最後,講幾個新手很容易踩到的地雷。

  1. 改模費用:第一次試模 (T0) 的產品,很少是完美的。通常都要修個一兩次 (T1, T2)。合約一開始就要談好,報價裡含了幾次免費修改。 不然每次改模都是一筆錢。
  2. 所有權歸屬:付了幾十萬開模,模具是誰的?這也要先講清楚。理論上是你付錢,就是你的。但有些廠商的報價是「合作開發」,模具所有權可能就有爭議。
  3. 最低訂購量 (MOQ):工廠最怕你開完模,第一批只下一千個,然後就沒下文了。所以通常會有 MOQ 的限制。 達不到量,單價可能會被拉高,或者...乾脆不接你單。
  4. 防水不是「設計」出來就好:防水是「製造」出來的。你的設計再完美,工廠的機台不穩、師傅經驗不足、品管馬虎,做出來的東西一樣漏水。所以,找對工廠,比什麼都重要。

總之,塑膠射出...尤其是防水件,是個系統工程。從設計、開模、試產到量產,環環相扣。成本的計算,也不只是單純的數字加總,更多的是經驗跟取捨。

你正在開發的產品,遇到最大的挑戰是成本還是技術?可以想想這個問題。

🎁 解鎖本篇限定Google外掛

90% 時間直接省下:射出開模&量產成本即算器

每次要抓防水外殼的開模和量產成本,Excel 算式打半天,打錯一格,全部報價亂掉。我自己跑專案時,最怕業務突然問「模費怎麼攤到單價?」「1 萬顆多少?」。用這工具,3 分鐘一次輸入,歷史紀錄自動存,公式全自動,過往報價全都留底。真的,效率差 10 倍。

複製下面程式碼,省掉反覆估價的 90% 麻煩

這個工具一次輸入,馬上計算模具費用分攤、單價、總額,並記錄每次估算,歷史紀錄隨時調閱。


// === 射出開模 & 量產成本即算器 ===

function doGet(e) {
  var html = [];
  html.push('<html><head>');
  html.push('<meta name="viewport" content="width=device-width,initial-scale=1">');
  html.push('<title>防水外殼-成本即算</title>');
  html.push('<style>body{font-family:sans-serif;background:#f8f9fa;}' +
    '.wrapper{max-width:410px;margin:24px auto;padding:30px 24px;' +
    'background:#fff;border-radius:12px;box-shadow:0 2px 8px #0002;}' +
    'input,select{width:90%;padding:6px;margin-bottom:10px;}' +
    '.btn{background:#1976d2;color:#fff;border:none;padding:10px 16px;' +
    'border-radius:5px;cursor:pointer;font-size:1rem;}' +
    '.history{margin-top:30px;background:#f1f3f4;padding:12px;' +
    'border-radius:8px;font-size:0.96em;}' +
    '.stat{background:#e3f2fd;padding:8px 10px;border-radius:6px;margin-bottom:14px;}' +
    '</style></head>');
  html.push('<body><div class="wrapper">');
  html.push('<h2>防水外殼-成本即算器</h2>');
  html.push('<form id="calcForm">');
  html.push('<div>模具費用 (元):<br>' +
    '<input type="number" min="1" step="1" id="moldFee" required></div>');
  html.push('<div>單件材料費 (元):<br>' +
    '<input type="number" min="0.1" step="0.01" id="matFee" required></div>');
  html.push('<div>單件射出加工費 (元):<br>' +
    '<input type="number" min="0" step="0.01" id="injFee" required></div>');
  html.push('<div>目標產量:<br>' +
    '<input type="number" min="100" step="1" id="qty" required></div>');
  html.push('<div>需求等級:<br>' +
    '<select id="grade">' +
    '<option>一般防潑水</option>' +
    '<option>IP67(高防水)</option>' +
    '<option>抗紫外光戶外等級</option>' +
    '</select></div>');
  html.push('<button type="button" class="btn" onclick="submitForm()">估算</button>');
  html.push('</form>');
  html.push('<div id="result"></div>');
  html.push('<div class="history"><strong>過往估算紀錄</strong>' +
    '<div id="historyList">讀取中...</div></div>');
  html.push('<script>');
  html.push('function submitForm(){' +
    'var m=document.getElementById("moldFee").value;' +
    'var a=document.getElementById("matFee").value;' +
    'var i=document.getElementById("injFee").value;' +
    'var q=document.getElementById("qty").value;' +
    'var g=document.getElementById("grade").value;' +
    'if(!m||!a||!i||!q){alert("欄位不能空");return;}' +
    'document.getElementById("result").innerHTML="計算中...";' +
    'google.script.run.withSuccessHandler(showResult).calcCost(' +
    'Number(m),Number(a),Number(i),Number(q),g);' +
    '}' +
    'function showResult(res){' +
    'document.getElementById("result").innerHTML=res.html;' +
    'updateHistory();' +
    '}' +
    'function updateHistory(){' +
    'google.script.run.withSuccessHandler(function(data){' +
    'document.getElementById("historyList").innerHTML = data;' +
    '}).getHistory();' +
    '}' +
    'window.onload=updateHistory;</script>');
  html.push('</div></body></html>');
  return HtmlService.createHtmlOutput(html.join(''));
}

// 主計算與寫入
function calcCost(moldFee, matFee, injFee, qty, grade) {
  var sheet = getSheet_();
  var mold_each = Math.round(moldFee / qty * 100) / 100;
  var total_unit = Math.round((mold_each + matFee + injFee) * 100) / 100;
  var total_sum = Math.round((total_unit * qty) * 100) / 100;
  // 寫入一筆
  var now = new Date();
  sheet.appendRow([now, moldFee, matFee, injFee, qty, grade,
    mold_each, total_unit, total_sum]);
  // 輸出 HTML 給前端
  var msg = '<div class="stat">單顆模具分攤: '+mold_each+' 元</div>';
  msg += '<div class="stat">單件總成本: '+total_unit+' 元</div>';
  msg += '<div class="stat">全部金額: '+total_sum+' 元</div>';
  msg += '<div style="color:#607d8b;font-size:0.93em">需求等級: '+grade+'</div>';
  return {html: msg};
}

// 歷史查詢
function getHistory(){
  var sheet = getSheet_();
  var arr = sheet.getRange(Math.max(2,sheet.getLastRow()-9),1,sheet.getLastRow()>1?Math.min(10,sheet.getLastRow()-1):0,9)
    .getValues();
  if (arr.length==0) return '無紀錄';
  var txt = '';
  for(var i=arr.length-1;i>=0;i--){
    txt += '<div style="border-bottom:1px #ddd solid;padding:4px 0;">';
    txt += arr[i][0].toLocaleString()+' | '+arr[i][4]+'顆 | '+arr[i][5]+' | ';
    txt += '單價:'+arr[i][7]+' | 總:'+arr[i][8]+'</div>';
  }
  return txt;
}

// 建立/抓取 Sheet
function getSheet_(){
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var name = "射出成本紀錄";
  var sheet = ss.getSheetByName(name);
  if(!sheet){
    sheet = ss.insertSheet(name,0);
    sheet.appendRow(["時間","模具費","材料費","射出加工費","產量","等級","模分攤","單價","總價"]);
  }
  return sheet;
}

只要 6 步,所有射出成本一鍵搞定

超簡單,不會卡,連新手都能成功!

  1. 打開 Apps Script 編輯器
    動作:開啟你想記錄的 Google 試算表,點選「擴充功能」→「Apps Script」
    位置:「擴充功能」在最上方選單列中間偏右
    結果:瀏覽器自動開啟一個新分頁,出現 Apps Script 編輯器
    ⚠️ 我之前幫同事設的時候,他公司帳號直接被擋,建議用自己私人帳戶先測,避免浪費時間。
  2. 全選、清空、貼上新程式碼
    動作:Ctrl+A 全選,按 Delete,然後將上方程式碼 Ctrl+V 貼上
    位置:白色編輯區正中央,光標要閃爍在最前面
    結果:原本那行 `function myFunction()` 完全消失,換成新內容
    ⚠️ 上次有個新手工程師問我,程式碼沒貼完整還一直跑錯,真的要從頭到尾貼好。
  3. 儲存專案
    動作:點磁碟片圖示(左上方工具列)或直接 Ctrl+S
    位置:編輯器畫面最上方左側區塊,旁邊有「專案名稱」欄
    結果:如果是第一次儲存,會跳出要你取個名字(隨便填一個就行)
    ⚠️ 我自己每次都亂取,完全不影響使用,有存檔才安全。
  4. 部署為網頁應用程式
    動作:右上角藍色「部署」→「新增部署作業」
    位置:「部署」在右上角,很明顯
    結果:彈出一個部署設定的小視窗
    子步驟:
    1. 點齒輪圖案,選「網頁應用程式」
    2. 「執行身份」選「我」
    3. 「誰可以存取」選「任何人」
    4. 按「部署」
    ⚠️ 新手很容易選錯存取權限,「任何人」一定要選,不然外部同事打不開。
  5. 授權同意與警告處理
    動作:跳出 Google 權限視窗,按下去走流程即可
    結果:出現紅色警告「Google 尚未驗證這個應用程式」
    處理:點「進階」→「前往(不安全)」→「允許」
    ⚠️ 我第一次看到也嚇到,後來問了資深 IT 前輩,這只是你自家專案沒送 Google 審核,大家都這樣用,不用擔心。
  6. 複製網址開啟,隨時估算
    動作:複製畫面上顯示的 `https://script.google.com/...` 網址
    位置:授權完成後畫面自動彈出,或從部署清單查看
    結果:貼到新分頁,表單馬上可用,每次估算自動記錄在你那份 Sheet 裡
    ⚠️ 改了程式碼,記得重新部署,不然網址不會更新新功能。
⚠️ 關於紅色授權警告畫面怎麼辦?
這是 Google 的預設警示,只要你寫的新程式沒申請公開審查,都會出現這個訊息。我自己第一次也覺得怪怪的,問過做 IT 的朋友,確定只要自己開發、自己和內部同事用,這步驟是必經過程。點「進階」然後「前往(不安全)」就能繼續,不會有資安疑慮(程式全部你看得到,自己掌控)。

真實場景:讓工程溝通和報價都變快 10 倍

一個朋友做設計公司,之前每接一個新專案,都要反覆開 Excel 算「外殼開模費怎麼灑到單價」,最後還得一條一條手記紀錄,常常算一算就亂掉。後來用這工具,一邊試各種生產數量,一邊即時看到攤提結果,客戶臨時改需求,五秒內重算,再也沒搞丟紀錄。還有一回,生產線那邊回報單價異動,也只要換個材料費重按一次,全流程紀錄都留底,連老闆追問時都能直接抓數據出來。
這種事,新手也能做,真的省超多時間。

Related to this topic:

Comments

  1. profile
    Guest 2025-12-22 Reply
    老實講,上次幫人弄一顆小防水盒模具,開模那個錢一來就快要三十萬,真的不是唬爛。而且還不算量產的塑膠件單價,那個要看你一次下多少量,小批量超貴那種。有時候在估價格前,我都得抓著設計工程師一直討論,什麼尺寸、壁厚、還有那個防水等級,到底會不會過?這些沒先喬清楚,後面如果規格有變或是出問題……嘖,再改就更慘了,錢跟時間都浪費。
  2. profile
    Guest 2025-12-21 Reply
    前陣子遇到一個蠻實際的問題,就是有客戶問那種防水外殼量產到底要怎麼算成本。唉,這種時候我腦袋第一個反應其實是「這題超難有標準答案」,因為開模費本來就隨產品差很多。有一次做醫療器材,用塑膠射出模那種,平均大概二十幾萬、快三十萬台幣跑不掉啦。但如果你的產品搞特殊一點,比如說什麼雙色成型啊,加上密封墊(像O型圈那類),真的都會再往上跳不少。所以講老實話,沒細節資訊我自己也只能猜。 還有單價成本就更分太多狀況了。材料選ABS、PC,價格也不同;尺寸越大越貴不用說 - 可是你年產量如果夠高,把那堆開模錢和生產線平均下去,一件算起來反而降滿多。我每次都勸大家一開始最好先喬定你一年想做多少,不然你去問三家廠商回來報價可以亂飛,比天氣預報還玄。 內部討論常卡在選料,每次只要扯到IP防水等級,比如IP67跟IP68,其實結構設計完全差在小細節,有時加個膠條整個成本就不是同一件事。而且對,很重要,如果開模頭一版沒做好……後面修正要再花錢,所以提案或估價的時候,我一定提醒要抓修改彈性,不然出事真的是GG。 突然想到,仔細拆帳還可以列更多項目,但每次想到報價單裡那些五花八門的小費用,其實我心裡都會自問:「嗯,到底哪些才是真正必須算進預算?」感覺很容易哪邊沒想周全,就爆掉。不過這也是有趣啦,每案真的遇到的情形都不太一樣。