Research

B30 Is Not C30: Comparing TCVN and Eurocode Grades

Engineers working across TCVN and Eurocode routinely map B30 onto C30/37 because the numbers match. They do not describe the same concrete. Comparing the two grade systems against a common basis shows the numeral mapping overstates design strength by 18 percent, while the correct mapping agrees within 2 percent, and reveals that both codes have been using the same safety factor on steel all along.

Research · Published 3 September 2026 · 6 min read · Civil AxisCivil Axis

There is a habit among engineers who work in both systems, and it is quietly expensive. Faced with a Vietnamese drawing specifying B30 concrete and a Eurocode calculation to run, the temptation is to type C30/37 and carry on. The numbers match. Surely that is the point of them.

It is not. B30 and C30/37 describe different concrete, and the gap is large enough to matter.

The two systems label different specimens

Both codes define concrete by a characteristic strength, meaning a value that 95 percent of test results will exceed. What differs is what gets tested.

Eurocode 2 names grades as a pair: C30/37 means 30 MPa characteristic strength measured on a cylinder, and 37 MPa on a cube. Both numbers describe the same concrete. The cylinder value is the lower of the two because a cylinder is slenderer and the platens restrain it less, so it fails at a lower apparent stress.

TCVN 5574 names its grades with a single letter and number. B30 is a characteristic strength of 30 MPa measured on a cube.

So the mapping is immediate once you say it out loud. B30 is a 30 MPa cube. The Eurocode grade with a 30 MPa cube is C25/30, not C30/37. Matching on the numeral silently swaps in a concrete that is roughly a grade and a half stronger.

How much it costs, in design strength

Design compressive strength is what actually enters a calculation. In Eurocode it is derived at the point of use:

fcd=αccfckγc=fck1.5f_{cd} = \frac{\alpha_{cc} f_{ck}}{\gamma_c} = \frac{f_{ck}}{1.5}

TCVN does not do that. It publishes the design strength RbR_b directly in a table, with the material safety already inside it. Setting the two side by side, matched by cube strength rather than by numeral:

TCVN grade

RbR_b (MPa)

Cube-matched EC grade

fcdf_{cd} (MPa)

TCVN higher by

B20

11.5

C16/20

10.67

7.8%

B25

14.5

C20/25

13.33

8.8%

B30

17.0

C25/30

16.67

2.0%

B35

19.5

C28/35

18.67

4.4%

B40

22.0

C32/40

21.33

3.1%

B45

25.0

C35/45

23.33

7.2%

B50

27.5

C40/50

26.67

3.1%

Matched properly, the two codes agree to within 2 to 9 percent across the whole range, with TCVN consistently a little more generous. That is remarkably close for two standards with entirely separate lineages, and it should be reassuring: the underlying physics is the same and both committees calibrated against it.

Now the numeral mapping. B30 has a design strength of 17.0 MPa. C30/37 has fcd=30/1.5=20.0f_{cd} = 30/1.5 = 20.0 MPa. Substituting one for the other hands you 17.6 percent more concrete strength than the specification allows, in the unsafe direction, on every compression check in the model.

For a column governed by concrete, that is most of a design margin.

The steel tells the opposite story

Run the same exercise on reinforcement and something unexpected falls out. TCVN publishes both a characteristic strength Rs,serR_{s,ser} and a design strength RsR_s:

TCVN grade

Rs,serR_{s,ser} (MPa)

RsR_s (MPa)

Implied factor

CB240-T

240

210

1.14

CB300-V

300

260

1.15

CB400-V

400

350

1.14

CB500-V

500

435

1.15

Eurocode 2 uses γs=1.15\gamma_s = 1.15 on reinforcement. TCVN's implied factor is 1.14 to 1.15 across every grade.

The two codes have been applying the same partial factor to steel all along. They simply present it differently: Eurocode makes you divide, TCVN does the division for you and prints the answer. CB500-V at 435 MPa and B500 at 500/1.15=434.8500/1.15 = 434.8 MPa are, for practical purposes, the same material with the same safety on it.

That single observation reframes the whole comparison. The codes do not disagree about reliability. They disagree about presentation, and about one specimen shape.

Where the presentation difference bites

Because TCVN hands you a pre-factored number, the safety factor is invisible at the point of use. Three consequences follow.

You cannot easily vary it. Eurocode lets you apply a reduced γc\gamma_c for an accidental combination, or a higher one for a member whose quality control is doubtful, because the factor is a separate term. In TCVN the equivalent adjustment means selecting a different tabulated value or applying a working-condition coefficient, which is a different mental operation.

Verification looks different. A Eurocode calculation shows its safety explicitly and can be audited factor by factor. A TCVN calculation shows a design strength and expects the reviewer to know where it came from. Neither is less safe. But a reviewer trained on one and reading the other will look for the factors in the wrong place and may conclude, wrongly, that they are missing.

Mixing is genuinely dangerous. Taking RbR_b from TCVN and applying γc\gamma_c from Eurocode to it double-counts the concrete safety factor. Taking fckf_{ck} from Eurocode and using it as if it were RbR_b under-counts it badly. Both mistakes are easy to make in a spreadsheet inherited from someone else, and neither produces an obviously wrong-looking number.

What actually transfers between the codes

Mechanics transfers completely. Equilibrium, strain compatibility, plane sections remaining plane, the shape of an interaction diagram, the reason a slender column fails before it yields: none of that belongs to a code. A cracked section behaves the same way in Hanoi and in Berlin.

Numbers transfer not at all. Grade designations, partial factors, combination coefficients, minimum reinforcement rules, cover requirements, deflection limits and detailing rules are all calibrated as a package. Each code's numbers are safe in the company of that code's other numbers, and only there.

Judgement transfers with care. An engineer's instinct for a reasonable slab depth or a plausible column size is built from experience in one system, and it is mostly portable, because it is really an instinct about spans and loads. But it should be checked rather than trusted the first few times.

Practical rules for working across both

  • State the design code on the drawing, in the calculation header, and in the model. A calculation with no code named is not checkable.

  • Convert specifications, not numbers. If a client asks for a Eurocode equivalent of B30, the honest answer is C25/30, arrived at through the cube strength.

  • Never apply one code's partial factors to another code's strengths. If the number came pre-factored, it stays pre-factored.

  • When cross-checking a TCVN design with a Eurocode tool, expect the Eurocode answer to be slightly more conservative on concrete. A 2 to 9 percent difference is the codes agreeing, not a mistake.

  • If the difference comes out at 15 percent or more, stop. Something has been mapped by numeral.

Takeaways

  • B30 is a 30 MPa cube. C30/37 is a 30 MPa cylinder. The Eurocode grade with a 30 MPa cube is C25/30.

  • Matched by cube strength, TCVN and EC2 design concrete strengths agree within 2 to 9 percent across B20 to B50.

  • Matched by numeral, B30 to C30/37 overstates design strength by 17.6 percent, unsafely.

  • TCVN's implied steel partial factor is 1.14 to 1.15 on every grade. Eurocode uses 1.15. They are the same.

  • TCVN pre-factors and publishes; Eurocode publishes characteristic values and makes you factor. Same reliability, different bookkeeping.

  • Mixing the two systems double-counts or drops the material safety, and the result never looks obviously wrong.

  • Mechanics is portable. Numbers are not.

#tcvn #eurocode #concrete #materials #designcodes #tcvn5574

Rate this
No ratings yet
Sign in to join the discussion.
Loading…