Tile Calculator
Count the tiles, boxes and grout for a floor or wall - including the grout gap, which most quick estimates forget.
How it works
- Area = length x width
- Each tile covers (tile length + gap) x (tile width + gap)
- Tiles = area (with waste) / coverage per tile, rounded UP
- Boxes = tiles / tiles per box, rounded UP
- Grout is estimated from the total joint length, gap width and tile thickness
Worked example
An 8 ft x 10 ft bathroom floor is 80 sq ft. With 12 in x 12 in tiles and a 1/8 in grout gap, each tile covers about 1.02 sq ft. With 10% waste you need 88 sq ft of tile, which is 87 tiles - at 10 per box, 9 boxes. Grout comes to roughly 6 lb, so one 10 lb bag is enough.
Assumptions to know
- Grout amount is a planning estimate using standard joint volume math - the grout manufacturer chart for your exact product wins.
- Tile coverage uses tile size plus one grout gap per tile.
- Thinset, backer board and spacers are not included.
Results are planning estimates only. Always check the coverage and instructions on the actual product you buy, and measure your own space carefully before ordering. When in doubt, a little extra material is cheaper than a second trip or a stalled job.
Frequently asked questions
How many extra tiles should I buy?
10 percent extra is standard for a straight grid in a simple room. Use 15 percent or more for diagonal layouts, small rooms with many cuts, or fragile tile.
Does grout gap size change the tile count?
Yes, a little. Each tile effectively covers its own size plus one grout gap on the length and width, so wider gaps mean slightly fewer tiles. This calculator includes the gap in the count.
How much grout will I need?
The result includes an estimated amount of dry grout based on tile size, gap width and tile thickness. Always compare with the coverage chart on the grout bag, because grout types differ.
Should I buy all boxes from the same batch?
Yes if you can. Tile color and size vary slightly between production lots, so buying everything at once avoids a visible mismatch.