Trong doanh nghiệp dịch vụ xây dựng, chi phí thi công thường được theo dõi theo hai mốc: dự toán (budget) lập trước thi công và thực chi (actual) tổng hợp cuối tháng. Hai mốc này cách nhau 30 ngày, và trong 30 ngày đó, chi phí có thể vượt ngân sách 10-20% mà không ai biết. Khi kế toán tổng hợp cuối tháng và phát hiện "hạng mục nhân công vượt 15%", chi phí đã trôi qua – không thu hồi được. Margin công trình, vốn đã mỏng 8-12%, bị ăn mòn thêm 2-3% – và nhiều công trình kết thúc với margin âm dù doanh thu ghi sổ đúng. Kiểm soát chi phí thi công không phải việc kế toán cuối tháng, là việc realtime trên công trường – và bài viết phân tích cách làm.

1. Ba lớp chi phí cần phân biệt
Chi phí thi công không phải một con số, là ba lớp liên kết. Lớp 1 – dự toán (budget): chi phí kế hoạch theo hạng mục BOQ, lập trước thi công. Lớp 2 – cam kết (commit): chi phí đã đặt mua/đã ký thầu phụ nhưng chưa thanh toán. Lớp 3 – thực chi (actual): chi phí đã thanh toán. Ba lớp này tương ứng ba thời điểm: trước, đang, sau. Kiểm soát chỉ actual là quá trễ – vì actual lag commit 15-30 ngày, và commit lag budget 0-60 ngày.
DN dịch vụ xây dựng hay mắc lỗi là chỉ theo dõi actual (vì kế toán chỉ ghi actual). Khi actual vượt budget, đã trễ 30-45 ngày từ lúc commit. Trong khi đó, nếu theo dõi commit, có thể phát hiện vượt ngân sách 15-30 ngày sớm – lúc đó còn có thể điều chỉnh (đổi vật tư rẻ hơn, đàm phán lại thầu phụ, giảm khối lượng). Kiểm soát commit là điểm chặn vượt ngân sách sớm nhất.
2. WBS: nền tảng của kiểm soát chi phí
WBS (Work Breakdown Structure) là phân rã công trình thành hạng mục, sub-hạng mục, cho đến mức có thể ước lượng và theo dõi chi phí. WBS là nền tảng vì chi phí không tồn tại ở mức công trình, tồn tại ở mức hạng mục. "Công trình A vượt ngân sách 10%" không cho phép hành động; "hạng mục 3.2 (thép) vượt 25%, hạng mục 5.1 (nhân công) vượt 15%" cho phép hành động cụ thể. WBS chuyển chi phí từ con số tổng (không hành động được) sang chi tiết (hành động được) – và đây là bước đầu tiên của mọi kiểm soát chi phí nghiêm túc.
WBS chuẩn cho công trình dịch vụ xây dựng thường có 3-4 cấp: công trình → giai đoạn → hạng mục → sub-hạng mục. Cấp thấp nhất (sub-hạng mục) nên có giá trị 50-200 triệu – đủ nhỏ để theo dõi, đủ lớn để không quá chi tiết. Mỗi sub-hạng mục có budget, commit, actual riêng – và CEO nhìn dashboard thấy ngay sub-hạng mục nào vượt. Không có WBS, chi phí là "một cục" không thể quản trị. Mỗi sub-hạng mục cũng có "owner" (PM phụ trách, hoặc thầu phụ) – để khi vượt, CEO biết hỏi ai, không phải hỏi chung chung "ai làm công trình A".
3. Commit tracking: chặn vượt ngân sách sớm
Commit tracking là kỹ thuật ít DN áp dụng nhưng mang lại ROI cao nhất. Khi một đơn mua hàng hoặc hợp đồng thầu phụ được ký, chi phí tương ứng được "commit" vào sub-hạng mục. Commit cộng dồn và so sánh với budget. Khi commit/budget > 90%, alert vàng. Khi > 100%, alert đỏ – khóa commit thêm (cần approval giám đốc). Cơ chế này chuyển kiểm soát chi phí từ "phát hiện sau khi chi" sang "chặn trước khi ký" – và đây là khác biệt căn bản giữa quản trị chủ động và bị động.
Cơ chế này chặn vượt ngân sách ở khâu ký, không phải khâu thanh toán. Ví dụ: sub-hạng mục "thép" có budget 800 triệu. Đã ký đơn mua 720 triệu (commit 90%, alert vàng). PM muốn mua thêm 150 triệu thép → commit sẽ lên 870/800 = 109% → alert đỏ, cần approval giám đốc. Giám đốc review: hoặc giảm khối lượng (đổi thiết kế), hoặc đàm phán giá rẻ hơn, hoặc chấp nhận vượt (vì phát sinh từ chủ đầu tư, sẽ thanh toán lại). Không có commit tracking, 150 triệu này được mua tự do, actual cuối tháng lên 870/800 = 109% – lúc đó mới phát hiện, đã trễ.
Commit tracking cũng cho phép phân biệt "vượt kế hoạch" với "vượt thực tế". Commit có thể vượt budget (vì PM ký nhiều đơn) nhưng actual có thể thấp hơn commit (vì đơn mua bị hủy một phần, hoặc giá thực thấp hơn giá ký). Phân biệt này quan trọng vì hành động khác nhau: commit vượt cần kiểm soát ký, actual vượt cần kiểm soát thanh toán. Không phân biệt, CEO có thể chặn ký sai lúc (khi actual vượt chứ không phải commit vượt) – và không chặn được thực sự.
4. Actual realtime: không đợi cuối tháng
Actual (chi phí đã thanh toán) thường được kế toán ghi cuối tháng khi tổng hợp hóa đơn. Nhưng actual có thể realtime nếu liên kết với module mua hàng + kế toán: khi hóa đơn vendor được duyệt thanh toán, actual tự cập nhật vào sub-hạng mục. CEO nhìn dashboard actual realtime, không cần đợi cuối tháng. Actual realtime cho phép so sánh ba lớp cùng lúc: budget / commit / actual. Khi commit > budget, vượt kế hoạch. Khi actual > commit, thực chi cao hơn cam kết (chứng tỏ đơn mua không khớp thực tế, hoặc có chi phí ngoài commit). Khi actual > budget, vượt ngân sách thực. Ba so sánh này realtime cho phép CEO ra quyết định trong tuần, không phải cuối tháng.

Actual realtime còn cho phép phát hiện anomaly: actual tăng vọt 30% trong tuần dù commit không tăng – có thể hóa đơn bị trùng, hoặc vendor ghi sai số tiền. Phát hiện anomaly trong tuần cho phép chặn sai sót trước khi thanh toán thực. Khi chỉ tổng hợp cuối tháng, anomaly đã thành thanh toán thực – khó thu hồi. Realtime actual không chỉ là "xem sớm", là cơ hội chặn sai sót mà cuối tháng không có.
Một lưu ý thực tế: actual realtime cần vendor gửi hóa đơn kịp thời. Nếu vendor gửi hóa đơn trễ 30-60 ngày (phổ biến ở VN), actual lag thực chi 30-60 ngày – realtime không giúp được. Giải pháp là yêu cầu vendor gửi hóa đơn trong 7-10 ngày sau giao, và áp dụng "accrual" (ghi nhận chi phí khi nhận hàng, không đợi hóa đơn). Accrual làm actual phản ánh thực chi gần thực tế, và là best practice mà DN nên áp dụng nếu muốn actual realtime thực sự.
5. Phân bổ chi phí chung: bài toán khó
Không phải chi phí nào cũng gán trực tiếp được cho sub-hạng mục. Chi phí chung (overhead) – quản lý dự án, điện nước site, an toàn lao động, vận chuyển – cần phân bổ. Phân bổ sai làm chi phí hạng mục sai, dẫn đến quyết định sai (coi hạng mục A lỗ trong khi thực ra A có lợi, chỉ bị gán overhead quá mức). Phân bổ sai còn làm sai bidding tiếp theo: nếu DN tưởng hạng mục A lỗ, sẽ cao hơn cho A ở công trình sau – mất cạnh tranh; nếu tưởng hạng mục B có lợi, sẽ thấp hơn cho B – ăn lỗ thực.
Phân bổ chuẩn theo driver: chi phí quản lý dự án phân bổ theo % khối lượng thi công, chi phí vận chuyển phân bổ theo tấn-km, chi phí an toàn phân bổ theo nhân công. Driver-based allocation chính xác hơn allocation flat theo doanh thu, vì phản ánh thực tế sử dụng nguồn lực. ERP hỗ trợ driver-based allocation tự động – mỗi chi phí chung có driver tương ứng, hệ thống phân bổ theo driver khi ghi nhận. Phân bổ driver-based còn cho phép CEO biết overhead thực của từng loại hạng mục – và từ đó tối ưu (giảm overhead trên hạng mục A bằng cách giảm nhân công site, vì driver của overhead A là nhân công).
6. Forecast: dự báo chi phí hoàn thành
Beyond theo dõi budget/commit/actual, forecast (dự báo chi phí hoàn thành) là kỹ thuật nâng cao. Forecast = actual đã chi + estimate chi phí phần còn lại. Khi công trình đạt 60% khối lượng, forecast cho biết "dự kiến tổng chi phí sẽ là X" – so với budget Y, vượt hay tiết kiệm bao nhiêu. Forecast cho phép CEO can thiệp khi công trình còn 40% khối lượng, không phải đợi 100% mới biết margin. Đây là khác biệt giữa "báo cáo quá khứ" và "quản trị tương lai" – và DN nào có forecast có thể chặn margin âm trước khi quá muộn.
Forecast có thể tính bằng ba cách: 1, actual-to-date + budget còn lại (đơn giản, giả định phần còn lại đúng budget); 2, actual-to-date + (budget còn lại × tỷ lệ vượt hiện tại) (phản ánh trend vượt); 3, actual-to-date + estimate PM (chuyên gia, chính xác nhất nhưng subjective). ERP nên hỗ trợ cả ba, cho phép CEO so sánh và ra quyết định. Khi ba cách đều cho forecast > budget, chắc chắn vượt – cần hành động. Khi ba cách diverge (một forecast vượt, hai không), cần audit xem trend vượt có phải temporary không.
Forecast còn cho phép "what-if": nếu cắt chi phí quản lý dự án 10%, forecast giảm bao nhiêu? Nếu đàm phán lại thầu phụ thép giảm 5%, forecast giảm bao nhiêu? What-if giúp CEO đánh giá các option can thiệp trước khi quyết định – thay vì quyết định theo cảm tính rồi mới thấy kết quả cuối tháng.
7. Dashboard chi phí CEO: năm con số
Dashboard chi phí CEO tối thiểu gồm năm con số mỗi công trình: 1 budget tổng, 2 commit hiện tại, 3 actual hiện tại, 4 forecast hoàn thành, 5 margin dự kiến (= giá trị hợp đồng − forecast). Năm con số này cho phép CEO biết ngay công trình nào đang vượt, công trình nào margin đang âm, công trình nào cần can thiệp. Dashboard cũng nên hiển thị top 5 sub-hạng mục vượt ngân sách nhất – để CEO biết chỗ cần chặn.
Dashboard nên có drill-down: click vào công trình, thấy WBS với budget/commit/actual/forecast mỗi sub-hạng mục. Click vào sub-hạng mục, thấy danh sách đơn mua + hóa đơn tương ứng. Drill-down giúp CEO từ tổng quan đến chứng từ trong 3 click, audit nhanh khi có dấu hiệu bất thường. Dashboard cũng nên hiển thị trend: actual/budget ratio của công trình A tuần này so với tuần trước – trend tăng là dấu hiệu vượt đang lan, cần can thiệp sớm. Trend giảm là dấu hiệu kiểm soát đang cải thiện – nên ghi nhận để PM biết nỗ lực có kết quả.
Một cảnh báo: dashboard chi phí chỉ có giá trị khi dữ liệu realtime và đáng tin. Nếu actual cập nhật hàng tuần (không phải hàng ngày), dashboard chỉ phản ánh quá khứ – CEO nhìn thấy "vượt 15%" nhưng thực tế có thể đã vượt 25% khi nhìn. Đầu tư vào dashboard mà không đầu tư vào input realtime là lãng phí – và đây là sai lầm phổ biến của DN mới digitize: mua dashboard đẹp nhưng dữ liệu vẫn cuối tháng.
8. Bắt đầu từ đâu
Ba bước tối thiểu trong tháng đầu: 1 lập WBS cho mọi công trình đang thi công (3-4 cấp, sub-hạng mục 50-200 triệu). 2 gán budget cho mỗi sub-hạng mục (từ dự toán). 3 theo dõi actual theo sub-hạng mục trên Excel (cột: sub-hạng mục, budget, actual tháng, actual lũy kế, vượt %). Ba bước này đã giúp CEO biết vượt ở đâu, dù chưa realtime. ERP + commit tracking là bước tiếp theo, đưa kiểm soát từ actual sang commit – chặn vượt ở khâu ký. AI Agent là lớp sau cùng, tự động flag forecast vượt, gợi ý điều chỉnh. Kiểm soát chi phí thi công không phải kế toán, là quản trị – và quản trị cần visibility realtime, không cần báo cáo cuối tháng.