Skip to the calculator
Rule Calculator

Paint Calculator

With room perimeter 44 ft, wall height 8 ft, doors 1, windows 2 and 2 more fields, paint comes to 2 gal — gallons to buy. It is reached in 5 steps, the last of which is ceil(1.72), and each one is printed on the page with its numbers filled in. The formula is the one published by American Coatings Association, not an approximation fitted to it.

Gallons of paint for a room, after subtracting doors and windows and allowing for the number of coats.

Formula and sources checked · How we check

Room perimeter 44 ft, Wall height 8 ft, Doors 1, Windows 2

2 gal

Gallons to buy for the example below. Editing a field recomputes the calculator below; this figure holds the answer the page was loaded with.

It is written into the HTML rather than drawn by a script, so a search engine reading this page without running JavaScript still finds an answer.

Gallons to buy
2 gal
8 liters
Wall area
44 * 8352 sq ft
Doors and windows
1 * 21 + 2 * 1551 sq ft
Area to paint
max(352 - 51, 0)301 sq ft
Paint needed
301 * 2 / 3501.72 gal
Gallons to buy
ceil(1.72)2 gal

Several at once

A job is rarely one of anything. Work out the first, add it, change the figures and add the next — the list keeps what each line was, and totals them.

Ask about this in the chat

Worked example

A 12 × 10 room with one door and two windows has 301 sq ft of wall. Two coats is 1.7 gallons — so two gallons, and the leftover is your touch-up supply. Ceilings are not included; add the floor area separately if you are painting one.

How to work it out yourself

  1. 1.Measure each wall and add the lengths for the room perimeter, then measure the ceiling height.
  2. 2.Multiply perimeter by height for gross wall area.
  3. 3.Subtract 21 sq ft per door and 15 sq ft per window.
  4. 4.Multiply by the number of coats and divide by the coverage on the can — usually 350–400 sq ft per gallon.
  5. 5.Round up to whole cans. The remainder is your touch-up supply.

What does it cost?

Typical price is $25–$70 per gallon. Interior latex. Ceiling paint and primer sit at the bottom of the range, low-VOC and designer lines at the top.

Typical prices per gallon, as of 2026
ItemTypical price
Interior latex, mid grade$30–$50 per gallon
Primer$20–$40 per gallon
Painter labour, interior walls$2–$6 per sq ft

Price ranges as of 2026. Materials pricing moves — treat these as a sanity check on a quote, not as a quote.

The formula

  1. Wall area44 * 8
  2. Doors and windows1 * 21 + 2 * 15
  3. Area to paintmax(352 - 51, 0)
  4. Paint needed301 * 2 / 350
  5. Gallons to buyceil(1.72)

Source: American Coatings Association, Master Painters Institute — coating application standards

Questions people actually ask

Does primer count as a coat?
Yes, and it covers less — most primers rate 200–300 sq ft per gallon against 350–400 for topcoat. Calculate primer separately with its own coverage figure rather than adding a coat here.
Why is my real coverage lower than the can says?
Rated coverage assumes a smooth, sealed, previously painted surface. New drywall, bare wood and textured walls absorb noticeably more — knock 20–30% off the rated figure for those, or prime first.
Do dark-to-light colour changes need more paint?
They need more coats, not more paint per coat. Covering a dark wall in white usually takes a tinted primer plus two topcoats; set coats to 2 here and price the primer separately.

Related

Part of a job

Read first

  • How to Measure a Room for Flooring — Where to hold the tape, how to split an odd shape into rectangles rather than one clever polygon, and how much extra to order once the offcuts are counted.
  • What Drywalling a Room Costs — Sheets, screws, and the finish level that decides most of the labour bill while appearing on no quote — level 4 and level 5 are not the same job.

Put this calculator on your site

Free, no attribution required beyond the link.

<iframe src="https://rulecalculators.com/embed/paint-coverage" width="100%" height="420" style="border:1px solid #e7e4de;border-radius:12px" title="Paint Calculator"></iframe>
Did this answer your question?