You can estimate concrete, brick, and block quantities directly in Google Sheets by entering dimensions, deducting openings, adding a wastage allowance, and publishing the result as a web calculator. This guide walks you through building a working masonry estimator with exact cell addresses and formulas, then publishing it online with GSheetPress so anyone can use it without touching the spreadsheet.
Build a Google Sheets model that calculates concrete volume and brick/block quantities from length, width, height, and opening dimensions • Deduct opening areas, add mortar joints, and apply a wastage percentage • Publish the finished calculator as a public web tool using GSheetPress Extensions • Test results against manual checks before sharing • Material estimation only — not a substitute for structural engineering
Concrete, Brick & Block Quantity Calculator in Google Sheets

Photo by Ray Donnelly on Unsplash

What this guide covers and what it does not

This article shows you how to build a material-quantity estimator for concrete pours and brick or block walls inside Google Sheets, then publish it as a web-facing calculator using the GSheetPress add-on. The model calculates how many bags of concrete or how many bricks you need for a given set of dimensions, applying standard deductions for openings and a user-defined wastage allowance.

What is excluded: structural design, load calculations, reinforcement schedules, mix-design specification, and site safety. Always have a qualified structural engineer review any construction project. The quantities produced here are material estimates only, intended to help with procurement and budgeting.

Key terms explained

  • Concrete volume: The total space a concrete pour must fill, measured in cubic metres (m³) or cubic feet (ft³).
  • Brick quantity: The number of bricks or blocks needed to build a wall of given dimensions, before allowing for wastage.
  • Mortar joint: The thin layer of mortar between bricks. A standard joint is 10 mm thick and increases the effective spacing of each brick, so it must be added to the brick face dimensions when calculating how many bricks fit in a given area.
  • Wastage allowance: An extra percentage added to the net quantity to cover breakage, cutting, and site losses. Typically 5–15 % for brickwork.
  • Opening deduction: The area of windows, doors, or voids subtracted from the gross wall area before calculating bricks or blocks needed.
  • Net area: Gross wall area minus opening area — the actual surface that needs bricks or blocks.
  • Coursing: Rows of bricks stacked horizontally. The number of courses in a wall height is determined by the brick height plus one mortar joint.
  • GS2Web SaaS: The GSheetPress cloud add-on that converts a specially structured Google Sheet into a public web calculator.
  • Calculator tab: The specific sheet tab inside your workbook that the GSheetPress add-on reads to generate the web form.
  • Runtime inputs (column G): Values submitted by a user on the published web form. The add-on writes these into column G when someone clicks Calculate. Never store result formulas in column G.
  • Form defaults (column E): Pre-filled values shown to the user when the calculator first loads. These are also used to test formulas before publishing.

Prerequisites

  • A Google account with access to Google Sheets.
  • GSheetPress installed and your account matched to a Calculator-entitlement plan. Visit GSheetPress pricing to confirm your plan includes the Calculator feature, then sign in at your GSheetPress account to verify entitlement.
  • A dedicated sample workbook created specifically for this exercise. Do not use a workbook containing private or sensitive data, because the publishing step makes the spreadsheet accessible to anyone who holds its link.
  • Basic familiarity with entering values into Google Sheets cells. No prior formula knowledge is assumed.

Assumptions used in this guide

The worked examples use metric units throughout. Dimensions are in metres; volumes in cubic metres; brick face sizes follow a common standard of 215 mm long × 65 mm high (excluding joint). If you work in imperial units or use non-standard brick sizes, substitute your own values in the formula cells described below. Joint thickness is set to 10 mm by default but is exposed as a user input so it can be changed.

Part 1 — Build the formulas manually first

Before creating the published calculator, it helps to understand the underlying maths. This section builds a plain Google Sheets model on a tab called Calcs. You will reference these helper cells from the Calculator tab later.

Concrete volume formula

Concrete volume is simply length × width × depth. For a slab or footing:

Volume (m³) = Length (m) × Width (m) × Depth (m)

If the pour has openings (for example, a slab with a service void), subtract the volume of each opening:

Net Volume = (L × W × D) - (Opening_L × Opening_W × Opening_D)

Then multiply by a wastage factor:

Adjusted Volume = Net Volume × (1 + Wastage% / 100)

Brick quantity formula

For a single-leaf wall (one brick thick), the number of bricks per square metre depends on the face size of the brick plus one mortar joint on each exposed edge:

Bricks per m² = 1 / ((Brick_Length + Joint) × (Brick_Height + Joint))

Using standard values: (0.215 + 0.010) × (0.065 + 0.010) = 0.225 × 0.075 = 0.016875 m² per brick, giving approximately 59.3 bricks per m².

Total net area of a wall:

Net Area (m²) = (Wall_Length × Wall_Height) - Opening_Area

Total bricks needed before wastage:

Net Bricks = Net Area × Bricks_per_m²

With wastage:

Adjusted Bricks = Net Bricks × (1 + Wastage% / 100)

Round up to whole bricks using CEILING:

=CEILING(Adjusted_Bricks, 1)

For detailed background on brick coursing and bonding patterns, the Brick Development Association publishes technical guidance that is worth reading before specifying materials.

Build the GSheetPress calculator

This section creates the published web calculator. You will end up with one estimator that handles both a concrete pour and a brick wall using the same set of dimensions, plus separate opening and wastage inputs.

Step 1 — Install and open the add-on

  1. Open your dedicated sample workbook in Google Sheets.
  2. Click Extensions in the top menu.
  3. Select GS2Web SaaS (or the name of your installed GSheetPress add-on).
  4. Click Calculator, then New Calculator.

Step 2 — Name and configure the new calculator

  1. Enter a name, for example: Concrete and Masonry Estimator.
  2. Set the number of inputs to 7. The seven inputs are: Wall/Slab Length, Wall/Slab Width or Thickness, Pour Depth or Wall Height, Opening Width, Opening Height, Mortar Joint Thickness, and Wastage Percentage.
  3. Choose whether to include a graph. For a quantity estimator, graphs are not essential; leave this unselected unless you want a visual output.
  4. Click Create. The add-on inserts a new sheet tab named after your calculator and pre-populates row 1 with the headers: Labels, Input Type, Required, Data, Default, ToolTips, Inputs, Rules in columns A through H respectively.

Step 3 — Set up the seven input rows

Rows 2 through 8 are the input rows. Row 9 is the generated button row. Row 10 is the merged Result Fields separator. Row 11 holds result column headings. Results begin at row 12.

For every input row below: column G is managed by the web form at runtime and must remain blank in your setup. Column E holds the default value shown on the web form; copy E values to G using Paste special → Values only when you want to test formulas before publishing.


Row 2 — Wall or Slab Length

  • A2 — Label: Wall / Slab Length (m)
  • B2 — Input Type: Number
  • C2 — Required: Tick the Required checkbox
  • D2 — Data: Leave blank
  • E2 — Default: 5
  • F2 — ToolTips: Enter the total length of the wall or slab in metres
  • H2 — Rules: Leave blank

Row 3 — Width or Thickness

  • A3 — Label: Width / Thickness (m)
  • B3 — Input Type: Number
  • C3 — Required: Tick the Required checkbox
  • D3 — Data: Leave blank
  • E3 — Default: 0.225
  • F3 — ToolTips: Wall thickness or slab width in metres. Single-leaf brick wall = 0.1125; standard block = 0.215
  • H3 — Rules: Leave blank

Row 4 — Pour Depth or Wall Height

  • A4 — Label: Depth / Height (m)
  • B4 — Input Type: Number
  • C4 — Required: Tick the Required checkbox
  • D4 — Data: Leave blank
  • E4 — Default: 2.4
  • F4 — ToolTips: Slab thickness (depth) or wall height in metres
  • H4 — Rules: Leave blank

Row 5 — Opening Width

  • A5 — Label: Opening Width (m)
  • B5 — Input Type: Number
  • C5 — Required: Leave the Required checkbox unticked
  • D5 — Data: Leave blank
  • E5 — Default: 0
  • F5 — ToolTips: Width of any door or window opening. Enter 0 if no opening
  • H5 — Rules: Leave blank

Row 6 — Opening Height

  • A6 — Label: Opening Height (m)
  • B6 — Input Type: Number
  • C6 — Required: Leave the Required checkbox unticked
  • D6 — Data: Leave blank
  • E6 — Default: 0
  • F6 — ToolTips: Height of any door or window opening. Enter 0 if no opening
  • H6 — Rules: Leave blank

Row 7 — Mortar Joint Thickness

  • A7 — Label: Mortar Joint (m)
  • B7 — Input Type: Number
  • C7 — Required: Tick the Required checkbox
  • D7 — Data: Leave blank
  • E7 — Default: 0.01
  • F7 — ToolTips: Mortar joint thickness in metres. Standard is 0.01 (10 mm)
  • H7 — Rules: Leave blank

Row 8 — Wastage Percentage

  • A8 — Label: Wastage %
  • B8 — Input Type: Number
  • C8 — Required: Tick the Required checkbox
  • D8 — Data: Leave blank
  • E8 — Default: 10
  • F8 — ToolTips: Wastage allowance as a whole number percentage, e.g. enter 10 for 10%
  • H8 — Rules: Leave blank

Row 9 — Generated button row (do not edit)

The add-on places the Calculate button here automatically. Column A contains the button label, column B shows Button, and column D shows main. Column E shows Reset. Do not alter or delete this row.

Step 4 — Add result labels and formulas

Row 10 is a merged separator labelled Result Fields — leave it as generated. Row 11 holds the result column headings generated by the add-on. Results begin at row 12. Enter a label in column A and your formula in column B for each result row.

The seven input defaults are in E2:E8. At runtime the web form writes user submissions into G2:G8. All result formulas reference column G. Before publishing, copy E2:E8 and paste into G2:G8 using Paste special → Values only so you can verify formulas with the default values.

Click cell A12, type the label, then press Tab to move to B12, paste the formula beginning with =, and press Enter. Repeat for each row.

Result row 12 — Gross wall or slab area

Select A12 and type:

Gross Area (m²)

Select B12 and enter:

=IF(G2*G3*G4=0,"Enter all three main dimensions",G2*G3)

This shows the gross face area (length × width) for a wall, or the plan area of a slab. The IF check surfaces a helpful message if any critical dimension is zero rather than silently returning zero.

Result row 13 — Opening area

Select A13 and type:

Opening Area (m²)

Select B13 and enter:

=G5*G6

Result row 14 — Net area

Select A14 and type:

Net Area (m²)

Select B14 and enter:

=IF(G2*G3*G4=0,"",MAX(0, B12-B13))

MAX(0, ...) prevents a negative net area if an opening entry exceeds the wall area, which would produce a nonsensical result.

Result row 15 — Concrete volume (net)

Select A15 and type:

Concrete Volume — Net (m³)

Select B15 and enter:

=IF(G2*G3*G4=0,"",ROUND(B14*G4,3))

For a slab: net plan area × depth. For a wall: net face area × thickness. The same formula works for both interpretations because width/thickness is in G3 and depth/height is in G4, and B14 already holds net area.

Note: For a solid concrete wall the volume equals length × thickness × height minus opening volume. The formula above computes this correctly when G3 is the wall thickness and G4 is the wall height.

Result row 16 — Concrete volume with wastage

Select A16 and type:

Concrete Volume — With Wastage (m³)

Select B16 and enter:

=IF(G2*G3*G4=0,"",ROUND(B15*(1+G8/100),3))

Result row 17 — Bricks per square metre

Select A17 and type:

Bricks per m² (standard 215×65 mm face)

Select B17 and enter:

=IF(G7=0,"Enter joint thickness",ROUND(1/((0.215+G7)*(0.065+G7)),1))

This hard-codes the standard brick face dimensions of 215 mm × 65 mm (expressed as 0.215 m and 0.065 m). If you use a different brick size, change these two constants to match. G7 holds the mortar joint thickness in metres.

Result row 18 — Net bricks required

Select A18 and type:

Bricks Required — Net (whole bricks)

Select B18 and enter:

=IF(G2*G3*G4=0,"",CEILING(B14*B17,1))

Result row 19 — Bricks with wastage

Select A19 and type:

Bricks Required — With Wastage (whole bricks)

Select B19 and enter:

=IF(G2*G3*G4=0,"",CEILING(B18*(1+G8/100),1))

Result row 20 — Wastage quantity

Select A20 and type:

Wastage Allowance (bricks)

Select B20 and enter:

=IF(G2*G3*G4=0,"",B19-B18)

Step 5 — Test with default values before publishing

  1. Select cells E2:E8.
  2. Press Ctrl+C (or Cmd+C on Mac) to copy.
  3. Click cell G2.
  4. Open Edit → Paste special → Values only and confirm. G2:G8 now contain the same numbers as E2:E8.
  5. Check that your result cells in B12:B20 show values, not errors.

Worked example and expected results

Using the default inputs below, verify your formulas produce these figures.

Default inputs

CellInputDefault value
G2Wall / Slab Length (m)5
G3Width / Thickness (m)0.225
G4Depth / Height (m)2.4
G5Opening Width (m)0
G6Opening Height (m)0
G7Mortar Joint (m)0.01
G8Wastage %10

Expected results

CellResult labelExpected value
B12Gross Area (m²)1.125
B13Opening Area (m²)0
B14Net Area (m²)1.125
B15Concrete Volume — Net (m³)2.7
B16Concrete Volume — With Wastage (m³)2.97
B17Bricks per m²59.3
B18Bricks Required — Net67
B19Bricks Required — With Wastage74
B20Wastage Allowance (bricks)7

Calculation check: Gross area = 5 × 0.225 = 1.125 m². Net concrete volume = 1.125 × 2.4 = 2.7 m³. With 10 % wastage = 2.97 m³. Bricks per m² = 1 / (0.225 × 0.075) ≈ 59.3. Net bricks = 1.125 × 59.3 = 66.7, rounded up to 67. With wastage: 67 × 1.10 = 73.7, rounded up to 74.

Alternative scenario — wall with a door opening

Change G5 to 0.9 and G6 to 2.1 to represent a standard door opening of 0.9 m × 2.1 m = 1.89 m².

ResultNo openingWith 0.9 × 2.1 m opening
Net Area (m²)12.010.11
Concrete Volume — Net (m³)2.72.275
Bricks — Net711599
Bricks — With 10% Wastage783659

Note: To get the values in the table above, also update G2 to 5, G3 to 0.225, and G4 to 2.4 — but set G2 as the full wall length of 5 m so the gross face area is 5 × 2.4 = 12 m², not 5 × 0.225. For a brick wall calculation, interpret G3 as the wall thickness (used only for concrete volume) and use G2 × G4 as the face area. The formula in B12 uses G2 × G3, which works for a slab (plan area) but not for a brick wall face area. If you are estimating bricks, the face area is G2 × G4. You can add a second area helper row for wall face area if you want both calculations simultaneously. See the GSheetPress Calculator documentation for guidance on structuring multi-purpose result sets.

Frequently asked questions

Can I use this calculator for block walls instead of brick walls?

Yes, but you must change the brick face dimensions in the formula in B17. Standard concrete blocks are commonly 440 mm × 215 mm face size. Replace 0.215 with 0.44 and 0.065 with 0.215 inside the formula to get blocks per m²: =IF(G7=0,"Enter joint thickness",ROUND(1/((0.44+G7)*(0.215+G7)),1)). This gives approximately 10 blocks per m² with a 10 mm joint, which is the accepted figure for standard 440 × 215 mm blocks.

Why does the calculator show a brick count even for a concrete slab?

The calculator combines both material types in a single tool so you can compare them or switch between uses by changing inputs. If you are estimating a pure slab, ignore the brick rows (B17–B20). The concrete volume rows (B15–B16) remain valid regardless. You can suppress brick results by wrapping B17–B20 formulas in an additional IF that checks whether a user has flagged the job type, though the basic model here leaves that refinement to you.

How accurate are these estimates?

The estimates are as accurate as the inputs you provide and the assumptions built into the formulas. Standard brick sizes and joint thicknesses vary by manufacturer and region. Wastage varies by skill level, bond pattern, and site conditions. These figures are a planning and procurement guide, not a certified bill of quantities. For formal projects, have a quantity surveyor or structural engineer verify the figures. The GSheetPress support team can assist with formula or publishing issues but cannot advise on structural quantities.

Troubleshooting

ProblemLikely causeFix
Result cells show #VALUE!A G cell contains text instead of a numberCheck that you used Paste special → Values only when copying E to G; delete any text from G cells and re-paste
Brick count is zero or blankG2, G3, or G4 is zero or emptyEnsure all three main dimension cells in G contain a positive number greater than zero
Bricks per m² seems too lowMortar joint entered in mm instead of metresG7 must be in metres; enter 0.01 not 10
Concrete volume is unreasonably largeDimensions entered in mm or cm instead of metresConvert all dimensions to metres before entering; 2400 mm = 2.4 m
Negative net area shownOpening area larger than gross areaThe MAX(0,...) in B14 prevents negative output, but check your opening dimensions; they should not exceed the wall dimensions
Web form does not appear after publishingSheet sharing not set correctlyShare the workbook with Anyone with the link as Editor before publishing; see the publish section below
Results on the web form differ from your SheetG cells not refreshed after changing E defaultsRe-copy E2:E8 to G2:G8 as values to re-sync test data

If you need further help with the add-on, visit the GSheetPress support page or consult the table and results configuration guide for structuring result rows.

Publish and test your web calculator

Step 1 — Share the workbook

  1. Open your dedicated sample workbook in Google Sheets.
  2. Click the Share button in the top-right corner.
  3. Under General access, change the setting to Anyone with the link.
  4. Set the role to Editor.
  5. Click Done.

Important: Setting access to Editor means anyone who obtains the spreadsheet link can modify the file. This is why you must use only your dedicated sample workbook, not any file containing real or private data. The GSheetPress publishing system requires this permission level to write runtime values into column G when the web form is submitted.

Step 2 — Publish the calculator

  1. Make sure the Calculator tab is the active (selected) sheet tab.
  2. Click Extensions → GS2Web SaaS → Calculator → Publish Calculator.
  3. Wait for the confirmation message indicating the calculator has been published successfully.
  4. The add-on opens or updates a sheet called Calculator Link (or similar) in your workbook.

Step 3 — Find and open the public link

  1. Click the Calculator Link sheet tab.
  2. Locate the row that matches your calculator's Sheet Name.
  3. Open the URL in column C (Link) — this is the public-facing calculator URL. Do not use column B (Edit Link), which is for editing the calculator configuration.
  4. If the row is not visible or the link appears outdated, click Get Links inside the add-on menu to refresh the sheet.

Step 4 — Test the published calculator

  1. Open the public link from column C in a new browser tab.
  2. Enter the default test inputs: Length = 5, Width = 0.225, Depth/Height = 2.4, Opening Width = 0, Opening Height = 0, Mortar Joint = 0.01, Wastage % = 10.
  3. Click Calculate.
  4. Confirm the results match the expected values: Concrete Volume (Net) = 2.7 m³, Concrete with Wastage = 2.97 m³, Bricks with Wastage = 74.
  5. If results differ, return to the spreadsheet, check formulas in B12:B20, re-copy E2:E8 to G2:G8 as values, and republish. Republishing the same calculator retains its existing public link.

Step 5 — Optional: embed in a website

If you want to embed the calculator in a webpage, copy the iframe code from column D (Iframe) of the Calculator Link sheet and paste it into an HTML block on your site. No additional configuration is needed. For further guidance on embedding and sharing options, see the GSheetPress publishing options page.