Lãi gộp tăng là nhờ bán nhiều hơn hay nhờ biên cao hơn? Cách tách hai hiệu ứng

2026· Tác giả Bùi Văn Cường
KHOÁ HỌC ĐỌC BÁO CÁO TÀI CHÍNH
Đọc báo cáo tài chính — chất lượng lợi nhuận: sơ đồ minh hoạ — Tâm An School

Bài này thuộc hub Đọc báo cáo tài chính — loạt kiến thức đọc báo cáo tài chính nâng cao, không gắn mã cổ phiếu. Tín hiệu trong báo cáo chỉ để sàng lọc, không phải kết luận về một doanh nghiệp cụ thể.

Câu trả lời ngắn

Lãi gộp bằng doanh thu thuần nhân với biên lãi gộp, nên mức tăng của lãi gộp luôn tách được thành hai phần bằng một phép đại số đơn giản: phần do doanh thu đổi (tính theo biên kỳ trước) và phần do biên đổi (tính trên doanh thu kỳ này). Với công ty X giả định, doanh thu từ 1.000 lên 1.100 và biên từ 20,0% lên 22,0%, lãi gộp tăng 42, gồm 20 từ hiệu ứng doanh thu và 22 từ hiệu ứng biên. Nhưng "hiệu ứng doanh thu" chưa chắc là "bán thêm hàng", và hiệu ứng biên không cho biết vì sao biên đổi: báo cáo chỉ có doanh thu, giá vốn, lãi gộp, không có số lượng, giá bán hay cơ cấu. Phép tách chỉ cho biết nên hỏi gì tiếp, chưa phải kết luận về chất lượng lợi nhuận.

Lãi gộp bằng doanh thu nhân biên: hai hiệu ứng doanh thu và biên

Sơ đồ minh hoạ khái niệm.

Lãi gộp là tích của hai thứ

Trên báo cáo kết quả kinh doanh theo mẫu của Thông tư 99/2025, ba dòng nằm liền nhau là doanh thu thuần về bán hàng và cung cấp dịch vụ, giá vốn hàng bán, rồi lợi nhuận gộp, tức doanh thu thuần trừ giá vốn. Chia lãi gộp cho doanh thu thuần ta được biên gộp. Viết ngược lại: lãi gộp bằng doanh thu thuần nhân biên gộp.

Khi cả hai thừa số cùng đổi, mức thay đổi của tích chia được làm hai. Lấy lãi gộp kỳ này (doanh thu kỳ này nhân biên kỳ này) trừ lãi gộp kỳ trước, rồi cộng và trừ thêm cùng một lượng "doanh thu kỳ này nhân biên kỳ trước", ta có:

Chênh lệch lãi gộp = (doanh thu kỳ này − doanh thu kỳ trước) × biên kỳ trước + doanh thu kỳ này × (biên kỳ này − biên kỳ trước)

Số hạng đầu là hiệu ứng doanh thu: lãi gộp đổi bao nhiêu nếu chỉ doanh thu đổi, biên giữ như cũ. Số hạng sau là hiệu ứng biên: lãi gộp đổi bao nhiêu vì biên đổi, tính trên quy mô doanh thu mới. Khai triển vế phải thì hai số hạng "doanh thu kỳ này nhân biên kỳ trước" triệt tiêu, còn lại đúng chênh lệch lãi gộp. Đây là phép đại số, không phải mô hình hay quy định. Chênh lệch của biên tính bằng điểm phần trăm: từ 20,0% lên 22,0% là tăng 2,0 điểm phần trăm.

Ví dụ minh hoạ: công ty X giả định

Giả sử công ty X, tỷ đồng, số liệu giả định do Tâm An tự đặt, tính lại bằng Python, kiểm cộng đúng, không phải số liệu thật. Năm N so với năm N-1:

Khoản N-1 N
Doanh thu thuần 1.000 1.100
Giá vốn hàng bán 800 858
Lãi gộp 200 242
Biên gộp 20,0% 22,0%

Lãi gộp tăng 42, tức 21,0%, trong khi doanh thu chỉ tăng 10,0%. Hiệu ứng doanh thu là (1.100 − 1.000) × 20,0% = 20; hiệu ứng biên là 1.100 × (22,0% − 20,0%) = 22; cộng lại 42, khớp. Nếu biên đứng yên ở 20,0% thì lãi gộp năm N chỉ là 220.

Công ty X giả định: lãi gộp từ 200 lên 242, gồm 20 hiệu ứng doanh thu và 22 hiệu ứng biên

Số liệu giả định, tính lại bằng Python.

Cùng phép tách cho ba kết quả rất khác nhau về dấu. Cả ba kịch bản xuất phát từ doanh thu 1.000, biên 20,0%, lãi gộp 200:

Kịch bản Doanh thu Biên Lãi gộp Hiệu ứng doanh thu Hiệu ứng biên Tổng
1. Biên cải thiện 1.100 22,0% 242 +20 +22 +42
2. Doanh thu tăng mạnh, biên giảm 1.300 17,0% 221 +60 −39 +21
3. Doanh thu giảm, biên cao 900 24,0% 216 −20 +36 +16

Kiểm cộng: kịch bản 2 có 300 × 20,0% = 60 và 1.300 × (−3,0%) = −39; kịch bản 3 có (−100) × 20,0% = −20 và 900 × 4,0% = 36. Ở kịch bản 2, doanh thu tăng 30,0% mà lãi gộp chỉ tăng 10,5%; ở kịch bản 3, doanh thu giảm 10,0% nhưng lãi gộp vẫn tăng 8,0%. Chỉ nhìn "lãi gộp tăng" thì không phân biệt được ba trường hợp; nhìn hai hiệu ứng thì thấy ngay.

Thứ tự khai triển cũng là một lựa chọn

Phép tách trên đặt phần giao của hai thay đổi (chênh lệch doanh thu nhân chênh lệch biên, với công ty X là 100 × 2,0% = 2) vào hiệu ứng biên. Có thể khai triển theo thứ tự khác: hiệu ứng biên tính trên doanh thu kỳ trước (1.000 × 2,0% = 20) và hiệu ứng doanh thu tính theo biên kỳ này (100 × 22,0% = 22). Tổng vẫn 42 nhưng hai phần đổi chỗ. Ở kịch bản 2, cách thứ hai cho hiệu ứng doanh thu 51 và hiệu ứng biên −30 thay vì 60 và −39. Vì vậy hãy đọc dấu và cỡ của hai phần, ghi rõ đã dùng cách nào, và đừng coi từng con số là phép đo chính xác.

"Hiệu ứng doanh thu" không đồng nghĩa với "bán thêm hàng"

Doanh thu bằng số lượng nhân giá bán, nên doanh thu tăng có thể do bán nhiều hơn, giá cao hơn, hoặc cả hai; ba dòng doanh thu, giá vốn, lãi gộp không đủ để biết. Giữ nguyên kết quả kịch bản 1 (doanh thu 1.100, giá vốn 858, lãi gộp 242), ta dựng các câu chuyện khác nhau đứng sau. Kỳ trước: 10.000 sản phẩm, giá bán 100 triệu đồng, giá vốn 80 triệu đồng mỗi sản phẩm.

Câu chuyện Số lượng (sản phẩm) Giá bán (triệu đồng) Giá vốn mỗi sản phẩm (triệu đồng) Hiệu ứng lượng (tỷ đồng) Hiệu ứng giá bán (tỷ đồng) Hiệu ứng giá vốn đơn vị (tỷ đồng)
A. Bán nhiều, giá vốn đơn vị giảm 11.000 100 78 +20 0 +22
B. Giá bán tăng, giá vốn đơn vị cũng tăng 10.000 110 85,8 0 +100 −58

Kiểm cộng: ở A, 1.000 sản phẩm thêm nhân 20 triệu đồng lãi gộp mỗi sản phẩm được 20 tỷ đồng, và 11.000 sản phẩm nhân mức giảm giá vốn 2 triệu đồng được 22 tỷ đồng. Ở B không bán thêm sản phẩm nào, nhưng 10.000 sản phẩm nhân giá bán tăng 10 triệu đồng được 100 tỷ đồng, trừ 10.000 sản phẩm nhân giá vốn tăng 5,8 triệu đồng là 58 tỷ đồng, còn 42. Cả hai đều cho doanh thu 1.100, giá vốn 858, lãi gộp 242, tức "20 và 22" của phép tách hai hiệu ứng, nhưng ở B hiệu ứng doanh thu 20 hoàn toàn không phải bán thêm hàng.

Câu chuyện C là cơ cấu. Giả sử công ty X có hai nhóm sản phẩm, biên từng nhóm không đổi: nhóm một 30,0%, nhóm hai 10,0%. Năm N-1: nhóm một doanh thu 500 (lãi gộp 150), nhóm hai 500 (lãi gộp 50). Năm N: nhóm một 660 (lãi gộp 198), nhóm hai 440 (lãi gộp 44). Tổng doanh thu 1.100, lãi gộp 242, biên 22,0%, dù không sản phẩm nào đổi biên; biên chung lên vì nhóm biên cao chiếm 60,0% doanh thu thay cho 50,0%. Cộng theo nhóm: +48 và −6, được 42.

Cùng lãi gộp 242: ba câu chuyện khác nhau đứng sau hai hiệu ứng 20 và 22

Số liệu giả định, tính lại bằng Python.

Hiệu ứng biên có thể đến từ đâu

  1. Giá bán đổi: tăng giá, giảm giá, khuyến mại. Mẫu báo cáo có riêng dòng các khoản giảm trừ doanh thu, nên doanh thu thuần đã trừ phần này.
  2. Giá vốn đơn vị đổi: giá nguyên liệu hay hàng mua, hiệu suất và quy mô sản xuất.
  3. Cơ cấu đổi: tỷ trọng giữa các sản phẩm, khách hàng, thị trường có biên khác nhau, như câu chuyện C.
  4. Cách ghi giá vốn đổi: theo hướng dẫn tài khoản giá vốn hàng bán của Thông tư 99, giá vốn còn gồm dự phòng giảm giá hàng tồn kho lập thêm, hao hụt mất mát (sau trừ bồi thường) và chi phí sản xuất chung cố định không phân bổ; hoàn nhập dự phòng giảm giá hàng tồn kho thì ghi giảm giá vốn, nên biên có thể nhích lên chỉ vì hoàn nhập (xem bài về hoàn nhập dự phòng). Phương pháp tính giá xuất kho cũng làm cùng lượng hàng cho giá vốn khác nhau (xem bài về hàng tồn kho).

Ba nhóm đầu là diễn biến kinh doanh, nhóm thứ tư là cách ghi. Từ ba dòng số liệu không biết nhóm nào đứng sau.

Giới nghiên cứu nhìn biên gộp thế nào

Piotroski (2000) có một trong chín tiêu chí là thay đổi biên lợi nhuận gộp; Beneish (1999), theo mô tả cấu trúc ở các nguồn thứ cấp, có một chỉ số lấy biên gộp kỳ trước chia biên gộp kỳ này. Cả hai dùng biên như tín hiệu để xếp thứ tự báo cáo nên đọc kỹ trước, hệ số lấy từ mẫu doanh nghiệp Mỹ; bài này không dùng ngưỡng hay điểm số nào. Mô hình thấy biên đổi nhưng không thấy lý do. Chi tiết xem bài về M-Score.

Cách đọc trên báo cáo

  1. Chốt phạm vi và kỳ: hợp nhất hay riêng lẻ, năm hay quý (số quý là số đơn lẻ, nên so cùng quý năm trước).
  2. Lấy ba dòng doanh thu thuần, giá vốn hàng bán, lợi nhuận gộp của hai kỳ trên báo cáo kết quả kinh doanh, tính biên mỗi kỳ, rồi tách hai hiệu ứng và ghi cách khai triển đã dùng.
  3. Mở thuyết minh và báo cáo thường niên tìm điều giải thích: doanh thu và giá vốn theo nhóm sản phẩm hay khu vực, sản lượng và giá bán, biến động dự phòng giảm giá hàng tồn kho, thay đổi chính sách kế toán. Mức chi tiết tuỳ từng doanh nghiệp công bố.
  4. Đặt cạnh hàng tồn kho, phải thu và dòng tiền cùng kỳ: biên tăng nhưng tồn kho phình ra, hay doanh thu tăng nhanh hơn tiền thu về, là chỗ cần hỏi thêm.

Áp dụng cho từng mã. Khi có báo cáo tài chính thật, hệ thống của Tâm An dùng kiến thức này ở trục phân tích theo mã để tính hai hiệu ứng qua nhiều kỳ và đặt cạnh tốc độ tăng tồn kho, phải thu, giúp người đọc biết nên mở thuyết minh nào trước; chỉ là công cụ sàng lọc.

Lưu ý chuyển kỳ: báo cáo năm 2025 lập theo Thông tư 200, từ năm tài chính bắt đầu 01/01/2026 theo Thông tư 99/2025, mã số chỉ tiêu đã đánh lại; hãy ghép dòng theo tên, không theo mã số.

Điểm cần cẩn trọng

  • Công ty X và mọi con số trong ví dụ là giả định; các tỷ lệ chỉ để so với nhau, không có ngưỡng nào là "tốt" hay "xấu".
  • Phép tách đúng về đại số nhưng không đo nguyên nhân: nó mô tả lại ba dòng số liệu; lượng, giá và cơ cấu phải lấy từ nguồn khác.
  • Biên chung là trung bình của nhiều biên; cùng một biên chung có thể ứng với nhiều cơ cấu.
  • Biên so giữa các kỳ của cùng doanh nghiệp đáng tin hơn so giữa các doanh nghiệp, vì mỗi nơi phân loại chi phí vào giá vốn một khác. Bài không nêu mức biên "bình thường" của ngành nào.
  • Bài viết cho doanh nghiệp phi tài chính có dòng lãi gộp; ngân hàng, bảo hiểm, chứng khoán có mẫu báo cáo riêng, không áp dụng thẳng.

Đừng nói quá

  • Không viết "hiệu ứng doanh thu là phần bán thêm hàng": đó có thể là giá bán tăng.
  • Không viết "biên tăng là quản lý tốt hơn" hay "biên giảm là có vấn đề" khi chưa đọc thuyết minh.
  • Không viết "lãi tăng nhờ doanh thu là bền, nhờ biên là nhất thời" (hay ngược lại): mỗi phần đều có thể bền hoặc không.
  • Không dùng ví dụ để suy ra điều gì về một doanh nghiệp cụ thể; bài không phải khuyến nghị đầu tư.

Tín hiệu không phải kết luận

Khi hiệu ứng biên chiếm phần lớn mức tăng lãi gộp, hoặc biên đổi mạnh giữa các kỳ, đó là tín hiệu để mở thuyết minh và báo cáo thường niên, chưa phải bằng chứng về điều gì của doanh nghiệp. Mỗi trường hợp có nguyên nhân hợp lý khác: giá bán tăng theo thị trường, giá nguyên liệu giảm, quy mô lớn hơn, chuyển sang sản phẩm biên cao, đổi cách tính giá xuất kho, hoàn nhập dự phòng vì hàng đã bán được. Chỉ kiểm toán độc lập, cơ quan quản lý và người có đủ hồ sơ mới đủ căn cứ kết luận về hành vi của một doanh nghiệp.

Căn cứ

Căn cứ kiểm ngày 14/10/2026.

  • Công thức phân tách: phép khai triển đại số Tâm An tự kiểm; ví dụ công ty X Tâm An tự đặt và tính lại bằng Python ngày 25/10/2026.
  • Thông tư 99/2025/TT-BTC (hiệu lực 01/01/2026), Công báo ngày 16/11/2025, đọc từ bản PDF (mức A): tên các dòng của mẫu báo cáo kết quả hoạt động kinh doanh và hướng dẫn tài khoản giá vốn hàng bán; báo cáo năm 2025 lập theo Thông tư 200/2014/TT-BTC.
  • Piotroski, J. D. (2000), Journal of Accounting Research 38 (Supplement): 1-41: chín tiêu chí, trong đó có thay đổi biên lợi nhuận gộp (đã đọc bản gốc).
  • Beneish, M. D. (1999), Financial Analysts Journal 55(5): 24-36: chỉ dùng cấu trúc chỉ số biên gộp theo nguồn thứ cấp, không dùng hệ số hay ngưỡng.

Đọc thêm

Cả chuỗi: chuyên mục Đọc báo cáo tài chính.

Lãi gộp bằng doanh thu thuần nhân biên gộp, nên chênh lệch lãi gộp bằng chênh lệch doanh thu nhân biên kỳ trước (hiệu ứng doanh thu) cộng doanh thu kỳ này nhân chênh lệch biên (hiệu ứng biên). Với công ty X giả định (tỷ đồng): doanh thu 1.000 lên 1.100, biên 20,0% lên 22,0%, lãi gộp 200 lên 242; hiệu ứng doanh thu 20, hiệu ứng biên 22, cộng 42, trong khi doanh thu chỉ tăng 10,0% còn lãi gộp tăng 21,0%. Ba kịch bản cùng xuất phát từ 1.000 và 20,0% cho kết quả khác dấu: +20 và +22, +60 và -39, -20 và +36. Đổi thứ tự khai triển thì hai phần đổi chỗ (22 và 20; kịch bản hai thành 51 và -30). Cùng kết quả 242 có thể đến từ bán nhiều hơn với giá vốn đơn vị giảm (+20 lượng, +22 giá vốn đơn vị), từ giá bán tăng nhanh hơn giá vốn đơn vị (+100 và -58, không bán thêm sản phẩm nào), hoặc từ cơ cấu nghiêng về nhóm biên cao (+48 và -6, biên từng nhóm không đổi). Vì báo cáo chỉ có doanh thu, giá vốn và lãi gộp, hiệu ứng doanh thu chưa chắc là bán thêm hàng và hiệu ứng biên chưa nói được vì sao biên đổi; cần mở thuyết minh và báo cáo thường niên để xem sản lượng, giá bán, cơ cấu và dự phòng. Đây là tín hiệu để đặt câu hỏi, chưa phải kết luận về chất lượng lợi nhuận hay về doanh nghiệp, và không phải khuyến nghị đầu tư.

Nội dung mang tính giáo dục, không phải tư vấn đầu tư. Tín hiệu và mô hình chỉ để sàng lọc, không phải kết luận. Căn cứ pháp lý có thể thay đổi; luôn đối chiếu văn bản hiện hành.

Mã QR tham gia nhóm Zalo Chứng khoán Tâm An

Cộng đồng Zalo

Tham gia nhóm Chứng khoán Tâm An

Cùng thảo luận tín hiệu, cập nhật chiến lược theo tháng và học Price Action mỗi ngày.

Góc nhìn Price Action · Trong 5 phút

Add Zalo Admin, nhắn ngay mã cổ phiếu bạn quan tâm — nhận góc nhìn Price Action trong 5 phút

Diễn biến giá thay đổi theo từng phiên, không có sẵn trong bài viết tĩnh. Add Zalo của Admin và nhắn ngay mã cổ phiếu bạn quan tâm, Admin sẽ gửi lại góc nhìn Hành động giá (Price Action) cho mã đó trong vòng 5 phút.

Bùi Văn Cường
Nhà phân tích kỹ thuật — xem thêm

Bài phân tích liên quan

Bài viết mới nhất

Khoá Đào Tạo và Dịch VụVào room Zalo cộng đồng