Mild Steel Bar Weight Calculator | Accurate Construction Steel Weight Tool
:root {
–primary: #004a99;
–primary-dark: #003366;
–success: #28a745;
–bg-color: #f8f9fa;
–text-color: #333;
–border-color: #ddd;
–white: #ffffff;
}
* {
box-sizing: border-box;
margin: 0;
padding: 0;
}
body {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
line-height: 1.6;
color: var(–text-color);
background-color: var(–bg-color);
}
.container {
max-width: 960px;
margin: 0 auto;
padding: 20px;
}
/* Typography */
h1 {
text-align: center;
color: var(–primary);
margin-bottom: 10px;
font-size: 2.5rem;
}
h2 {
color: var(–primary);
margin-top: 40px;
margin-bottom: 20px;
border-bottom: 2px solid var(–primary);
padding-bottom: 10px;
}
h3 {
color: var(–primary-dark);
margin-top: 25px;
margin-bottom: 15px;
}
p {
margin-bottom: 15px;
}
ul, ol {
margin-bottom: 20px;
padding-left: 25px;
}
li {
margin-bottom: 10px;
}
/* Calculator Styles */
.calc-wrapper {
background: var(–white);
padding: 30px;
border-radius: 8px;
box-shadow: 0 4px 15px rgba(0,0,0,0.1);
margin-bottom: 40px;
border-top: 5px solid var(–primary);
}
.input-section {
margin-bottom: 30px;
}
.input-group {
margin-bottom: 20px;
}
.input-group label {
display: block;
font-weight: 600;
margin-bottom: 8px;
color: var(–primary-dark);
}
.input-group input,
.input-group select {
width: 100%;
padding: 12px;
border: 1px solid var(–border-color);
border-radius: 4px;
font-size: 16px;
transition: border-color 0.3s;
}
.input-group input:focus,
.input-group select:focus {
border-color: var(–primary);
outline: none;
box-shadow: 0 0 0 3px rgba(0, 74, 153, 0.1);
}
.helper-text {
font-size: 0.85rem;
color: #666;
margin-top: 5px;
}
.error-msg {
color: #dc3545;
font-size: 0.85rem;
margin-top: 5px;
display: none;
}
.btn-group {
display: flex;
gap: 15px;
margin-top: 20px;
}
button {
padding: 12px 24px;
border: none;
border-radius: 4px;
cursor: pointer;
font-weight: 600;
font-size: 16px;
transition: background 0.3s;
}
.btn-reset {
background-color: #6c757d;
color: white;
}
.btn-reset:hover {
background-color: #5a6268;
}
.btn-copy {
background-color: var(–primary);
color: white;
}
.btn-copy:hover {
background-color: var(–primary-dark);
}
/* Results Section */
.results-section {
background-color: #f1f8ff;
padding: 25px;
border-radius: 6px;
border: 1px solid #d1e7dd;
margin-top: 30px;
}
.main-result {
text-align: center;
margin-bottom: 25px;
padding: 20px;
background: var(–white);
border-radius: 8px;
border: 2px solid var(–primary);
}
.main-result-label {
font-size: 1.1rem;
color: #555;
margin-bottom: 5px;
}
.main-result-value {
font-size: 2.5rem;
font-weight: 700;
color: var(–primary);
}
.metrics-grid {
display: grid;
grid-template-columns: 1fr;
gap: 15px;
}
@media (min-width: 600px) {
.metrics-grid {
grid-template-columns: repeat(3, 1fr);
}
}
.metric-card {
background: var(–white);
padding: 15px;
border-radius: 4px;
text-align: center;
box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}
.metric-label {
font-size: 0.9rem;
color: #666;
margin-bottom: 5px;
}
.metric-value {
font-size: 1.2rem;
font-weight: 600;
color: var(–text-color);
}
.formula-box {
margin-top: 20px;
padding: 15px;
background: #fff3cd;
border-left: 4px solid #ffc107;
font-size: 0.95rem;
}
/* Table & Chart */
.data-visuals {
margin-top: 30px;
}
table {
width: 100%;
border-collapse: collapse;
margin-bottom: 20px;
background: var(–white);
}
th, td {
padding: 12px;
text-align: left;
border-bottom: 1px solid var(–border-color);
}
th {
background-color: var(–primary);
color: var(–white);
}
tr:nth-child(even) {
background-color: #f8f9fa;
}
.chart-container {
background: var(–white);
padding: 20px;
border-radius: 8px;
border: 1px solid var(–border-color);
margin-top: 20px;
height: 350px;
position: relative;
}
canvas {
width: 100% !important;
height: 100% !important;
}
/* Article Styles */
.article-content {
background: var(–white);
padding: 40px;
border-radius: 8px;
box-shadow: 0 2px 10px rgba(0,0,0,0.05);
}
.data-table {
width: 100%;
margin: 20px 0;
border: 1px solid var(–border-color);
}
.data-table th {
background: var(–primary-dark);
}
.faq-item {
margin-bottom: 20px;
border-bottom: 1px solid #eee;
padding-bottom: 20px;
}
.faq-question {
font-weight: 700;
color: var(–primary);
margin-bottom: 10px;
display: block;
}
.related-links {
display: grid;
grid-template-columns: 1fr;
gap: 15px;
margin-top: 20px;
}
@media (min-width: 600px) {
.related-links {
grid-template-columns: 1fr 1fr;
}
}
.related-link-card {
padding: 15px;
border: 1px solid var(–border-color);
border-radius: 4px;
transition: transform 0.2s;
}
.related-link-card:hover {
transform: translateY(-2px);
border-color: var(–primary);
}
.related-link-card a {
text-decoration: none;
color: var(–primary);
font-weight: 600;
}
.hidden {
display: none;
}
Mild Steel Bar Weight Calculator
Instantly calculate the weight of mild steel bars for construction and engineering projects.
Accurate results for round, square, and flat bars based on standard density.
Unit Weight (kg/m)
0.00 kg/m
Total Weight (Tonnes)
0.00 MT
Formula Used: Weight = (D² / 162.2) × Length × Quantity
Weight Breakdown
| Parameter |
Value |
| Shape | Round |
| Dimensions | 12 mm |
| Total Length | 1200 m |
| Steel Density | 7850 kg/m³ |
Unit Weight Comparison (kg/m)
Comparison of selected size vs. standard adjacent sizes.
What is a Mild Steel Bar Weight Calculator?
A mild steel bar weight calculator is an essential digital tool for civil engineers, contractors, and steel suppliers. It allows users to determine the theoretical weight of steel reinforcement bars (rebars) or structural steel sections without needing a physical scale. By inputting dimensions such as diameter, length, and quantity, the calculator applies standard density formulas to provide an accurate weight estimate.
Knowing the precise weight of mild steel is critical for logistics, cost estimation, and structural integrity checks. Whether you are ordering materials for a construction site or calculating the load on a truck, this tool eliminates manual calculation errors and saves valuable time.
Mild Steel Bar Weight Calculator Formula
The calculation of steel weight relies on the volume of the material multiplied by its density. The standard density of mild steel is generally accepted as 7850 kg/m³.
The General Formula
The core physics formula used is:
Weight (kg) = Volume (m³) × Density (kg/m³)
Shape-Specific Formulas
Depending on the profile of the bar, the volume calculation changes:
| Shape |
Formula (Weight in kg) |
Variables |
| Round Bar |
(D² / 162.2) × L |
D = Diameter (mm), L = Length (m) |
| Square Bar |
(A² × L × 7850) / 1,000,000 |
A = Side Length (mm), L = Length (m) |
| Flat Bar |
(W × T × L × 7850) / 1,000,000 |
W = Width (mm), T = Thickness (mm) |
Note: The popular engineering shortcut D²/162 for round bars is derived from: (π × D² / 4000000) × 7850.
Practical Examples
Example 1: Construction Column Reinforcement
Scenario: A site engineer needs to order steel for 10 concrete columns. Each column requires 8 pieces of 16mm diameter round bars, each 12 meters long.
- Input: Shape = Round, Diameter = 16mm, Length = 12m, Quantity = 80 (10 cols × 8 bars).
- Unit Weight Calculation: 16² / 162.2 = 1.58 kg/m.
- Total Weight: 1.58 kg/m × 12m × 80 bars = 1,516.8 kg (approx 1.52 Tonnes).
Example 2: Fabrication of a Steel Gate
Scenario: A fabricator is using flat bars measuring 50mm wide and 6mm thick. They need 20 strips of 3 meters each.
- Input: Shape = Flat, Width = 50mm, Thickness = 6mm, Length = 3m, Quantity = 20.
- Volume per meter: 0.05m × 0.006m × 1m = 0.0003 m³.
- Unit Weight: 0.0003 × 7850 = 2.355 kg/m.
- Total Weight: 2.355 kg/m × 3m × 20 = 141.3 kg.
How to Use This Mild Steel Bar Weight Calculator
- Select Shape: Choose between Round, Square, Flat, or Hexagonal based on your material.
- Enter Dimensions: Input the diameter (for round), side (for square), or width/thickness (for flat) in millimeters.
- Input Length: Enter the length of a single bar in meters. Standard commercial lengths are often 6m or 12m.
- Set Quantity: Enter the total number of bars required.
- Review Results: The calculator instantly updates the Total Weight (kg), Unit Weight (kg/m), and Total Tonnage.
Key Factors That Affect Steel Weight Results
While the theoretical weight is useful, real-world weights can vary due to several factors:
- Rolling Tolerance: Manufacturing standards (like IS:1786 or ASTM A615) allow for a weight tolerance of ±3% to ±5%. Actual bars may be slightly lighter or heavier than the theoretical value.
- Density Variations: While 7850 kg/m³ is the standard for mild steel, alloy variations can slightly alter density.
- Corrosion/Rust: Heavily rusted bars may lose mass, while surface oxidation can add negligible weight initially before flaking.
- Coating: Galvanized or epoxy-coated bars will have a slightly higher weight due to the added layer of zinc or polymer.
- Corner Radius: Square and flat bars often have rounded corners rather than sharp 90-degree edges, slightly reducing the actual volume and weight.
- Length Cutting: Commercial bars sold as "12 meters" might actually be 11.95m or 12.05m depending on the cutting precision at the mill.
Frequently Asked Questions (FAQ)
What is the standard density of mild steel?
The standard density used for mild steel calculations is 7850 kg/m³ (kilograms per cubic meter) or 7.85 g/cm³.
Why is D²/162 used for steel weight calculation?
It is a simplified derivation of the density formula. By calculating (Volume of 1m cylinder) × Density, the constants simplify to approximately 1/162.2. Using 162 is a quick and accurate enough shortcut for site engineers.
Does this calculator apply to TMT bars?
Yes. TMT (Thermo-Mechanically Treated) bars are made of mild steel. The density remains the same, so the weight calculation is identical.
Can I calculate the weight of stainless steel with this tool?
Stainless steel has a slightly different density (approx 7900-8000 kg/m³ depending on the grade). While this calculator uses mild steel density (7850), the result will be very close (within ~1-2%) and often acceptable for rough estimates.
How do I convert the result to Tonnes?
The calculator does this automatically. To do it manually, divide the weight in Kilograms by 1000. (e.g., 1500 kg = 1.5 Tonnes).
What is the weight of a 12mm rod per meter?
Using the formula D²/162: 12² / 162 = 144 / 162 ≈ 0.888 kg/m.
Why is the actual weight different from the calculated weight?
This is due to "Rolling Margin." Steel mills have a manufacturing tolerance. A 12mm bar might physically measure 11.8mm or 12.2mm, affecting the actual weight.
Does length affect the unit weight?
No. Unit weight (kg/m) is determined solely by the cross-sectional area (diameter/thickness). Length only affects the total weight.
Related Tools and Internal Resources
// Global Variables
var density = 7850; // kg/m^3
var chartInstance = null;
// Initialization
window.onload = function() {
calculateWeight();
};
// Toggle Inputs based on Shape
function toggleInputs() {
var shape = document.getElementById('shapeSelect').value;
var labelA = document.getElementById('labelDimA');
var groupB = document.getElementById('dimB-group');
var dimAInput = document.getElementById('dimA');
if (shape === 'round') {
labelA.innerText = 'Diameter (mm)';
groupB.classList.add('hidden');
dimAInput.value = 12;
} else if (shape === 'square') {
labelA.innerText = 'Side Length (mm)';
groupB.classList.add('hidden');
dimAInput.value = 12;
} else if (shape === 'flat') {
labelA.innerText = 'Width (mm)';
groupB.classList.remove('hidden');
dimAInput.value = 50;
} else if (shape === 'hex') {
labelA.innerText = 'Width Across Flats (mm)';
groupB.classList.add('hidden');
dimAInput.value = 12;
}
calculateWeight();
}
// Main Calculation Logic
function calculateWeight() {
// Get Inputs
var shape = document.getElementById('shapeSelect').value;
var dimA = parseFloat(document.getElementById('dimA').value);
var dimB = parseFloat(document.getElementById('dimB').value);
var length = parseFloat(document.getElementById('lengthInput').value);
var quantity = parseInt(document.getElementById('quantityInput').value);
// Validation
var isValid = true;
if (isNaN(dimA) || dimA <= 0) {
document.getElementById('errorDimA').style.display = 'block';
isValid = false;
} else {
document.getElementById('errorDimA').style.display = 'none';
}
if (shape === 'flat') {
if (isNaN(dimB) || dimB <= 0) {
document.getElementById('errorDimB').style.display = 'block';
isValid = false;
} else {
document.getElementById('errorDimB').style.display = 'none';
}
}
if (isNaN(length) || length <= 0) {
document.getElementById('errorLength').style.display = 'block';
isValid = false;
} else {
document.getElementById('errorLength').style.display = 'none';
}
if (isNaN(quantity) || quantity < 1) {
document.getElementById('errorQuantity').style.display = 'block';
isValid = false;
} else {
document.getElementById('errorQuantity').style.display = 'none';
}
if (!isValid) return;
// Calculation
var areaMM2 = 0;
var unitWeight = 0; // kg/m
var formulaText = "";
if (shape === 'round') {
// Area = pi * r^2 = pi * (d/2)^2
// Weight = Area(m2) * 1 * 7850
// Shortcut: D^2 / 162.19
unitWeight = (dimA * dimA) / 162.19;
formulaText = "Weight = (D² / 162.2) × Length × Qty";
document.getElementById('tblShape').innerText = "Round Bar";
document.getElementById('tblDim').innerText = dimA + " mm Dia";
} else if (shape === 'square') {
// Area = a^2
areaMM2 = dimA * dimA;
unitWeight = (areaMM2 / 1000000) * density;
formulaText = "Weight = (Side² × 0.00785) × Length × Qty";
document.getElementById('tblShape').innerText = "Square Bar";
document.getElementById('tblDim').innerText = dimA + " mm Side";
} else if (shape === 'flat') {
// Area = w * t
areaMM2 = dimA * dimB;
unitWeight = (areaMM2 / 1000000) * density;
formulaText = "Weight = (Width × Thick × 0.00785) × Length × Qty";
document.getElementById('tblShape').innerText = "Flat Bar";
document.getElementById('tblDim').innerText = dimA + "x" + dimB + " mm";
} else if (shape === 'hex') {
// Area of Hex = 0.866 * d^2 (where d is across flats)
// More precisely: 2 * sqrt(3) * (d/2)^2 = (sqrt(3)/2) * d^2 approx 0.866 * d^2
areaMM2 = 0.866025 * dimA * dimA;
unitWeight = (areaMM2 / 1000000) * density;
formulaText = "Weight = (0.866 × D² × 0.00785) × Length × Qty";
document.getElementById('tblShape').innerText = "Hexagonal Bar";
document.getElementById('tblDim').innerText = dimA + " mm (A/F)";
}
var totalWeight = unitWeight * length * quantity;
var totalTonnes = totalWeight / 1000;
var totalLength = length * quantity;
// Update UI
document.getElementById('totalWeightResult').innerText = totalWeight.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}) + " kg";
document.getElementById('unitWeightResult').innerText = unitWeight.toLocaleString(undefined, {minimumFractionDigits: 3, maximumFractionDigits: 3}) + " kg/m";
document.getElementById('totalTonnesResult').innerText = totalTonnes.toLocaleString(undefined, {minimumFractionDigits: 3, maximumFractionDigits: 3}) + " MT";
document.getElementById('totalLengthResult').innerText = totalLength.toLocaleString() + " m";
document.getElementById('formulaExplanation').innerHTML = "
Formula Used: " + formulaText;
document.getElementById('tblLen').innerText = totalLength + " m";
drawChart(shape, dimA, unitWeight);
}
function resetCalculator() {
document.getElementById('shapeSelect').value = 'round';
toggleInputs();
document.getElementById('dimA').value = 12;
document.getElementById('dimB').value = 5;
document.getElementById('lengthInput').value = 12;
document.getElementById('quantityInput').value = 100;
calculateWeight();
}
function copyResults() {
var weight = document.getElementById('totalWeightResult').innerText;
var unit = document.getElementById('unitWeightResult').innerText;
var shape = document.getElementById('shapeSelect').options[document.getElementById('shapeSelect').selectedIndex].text;
var text = "Mild Steel Bar Weight Calculation:\n";
text += "Shape: " + shape + "\n";
text += "Total Weight: " + weight + "\n";
text += "Unit Weight: " + unit + "\n";
var tempInput = document.createElement("textarea");
tempInput.value = text;
document.body.appendChild(tempInput);
tempInput.select();
document.execCommand("copy");
document.body.removeChild(tempInput);
var btn = document.querySelector('.btn-copy');
var originalText = btn.innerText;
btn.innerText = "Copied!";
setTimeout(function(){ btn.innerText = originalText; }, 2000);
}
// Chart Drawing Logic (Native Canvas)
function drawChart(shape, currentDim, currentWeight) {
var canvas = document.getElementById('weightChart');
var ctx = canvas.getContext('2d');
// Handle High DPI
var dpr = window.devicePixelRatio || 1;
var rect = canvas.getBoundingClientRect();
canvas.width = rect.width * dpr;
canvas.height = rect.height * dpr;
ctx.scale(dpr, dpr);
// Clear canvas
ctx.clearRect(0, 0, rect.width, rect.height);
// Data Generation
var labels = [];
var data = [];
var highlightIndex = 1;
if (shape === 'round' || shape === 'square' || shape === 'hex') {
// Generate comparison sizes: -2mm, current, +4mm
var sizes = [currentDim – 2, currentDim, currentDim + 4];
if (sizes[0] <= 0) sizes[0] = currentDim / 2; // prevent negative/zero
for (var i = 0; i < sizes.length; i++) {
var s = sizes[i];
var w = 0;
if (shape === 'round') w = (s * s) / 162.19;
else if (shape === 'square') w = (s * s * density) / 1000000;
else if (shape === 'hex') w = (0.866 * s * s * density) / 1000000;
labels.push(Math.round(s*10)/10 + "mm");
data.push(w);
}
} else {
// Flat bar: Compare thicknesses for same width
var t = parseFloat(document.getElementById('dimB').value);
var w = parseFloat(document.getElementById('dimA').value);
var thicknesses = [t – 2, t, t + 2];
if (thicknesses[0] <= 0) thicknesses[0] = t/2;
for (var i = 0; i < thicknesses.length; i++) {
var th = thicknesses[i];
var wt = (w * th * density) / 1000000;
labels.push(Math.round(th*10)/10 + "mm Thk");
data.push(wt);
}
}
// Draw Bar Chart
var padding = 40;
var chartWidth = rect.width – (padding * 2);
var chartHeight = rect.height – (padding * 2);
var maxVal = Math.max.apply(null, data) * 1.2; // 20% headroom
// Draw Axes
ctx.beginPath();
ctx.moveTo(padding, padding);
ctx.lineTo(padding, rect.height – padding);
ctx.lineTo(rect.width – padding, rect.height – padding);
ctx.strokeStyle = '#ccc';
ctx.stroke();
// Draw Bars
var barWidth = chartWidth / (data.length * 2);
var spacing = chartWidth / data.length;
for (var i = 0; i < data.length; i++) {
var val = data[i];
var barHeight = (val / maxVal) * chartHeight;
var x = padding + (i * spacing) + (spacing/2) – (barWidth/2);
var y = rect.height – padding – barHeight;
// Color
if (i === 1) ctx.fillStyle = '#004a99'; // Highlight selected
else ctx.fillStyle = '#aabbd1';
ctx.fillRect(x, y, barWidth, barHeight);
// Value Label
ctx.fillStyle = '#333';
ctx.font = 'bold 12px sans-serif';
ctx.textAlign = 'center';
ctx.fillText(val.toFixed(2) + " kg/m", x + barWidth/2, y – 10);
// X Axis Label
ctx.fillStyle = '#555';
ctx.font = '12px sans-serif';
ctx.fillText(labels[i], x + barWidth/2, rect.height – padding + 20);
}
}
// Resize listener for chart
window.addEventListener('resize', function() {
calculateWeight();
});