# Paint Calculator

> Estimates wall paint from the wall area (room length, width and height, or a given area), subtracting 1.9 m² per door and 1.4 m² per window, multiplying by the number of coats and dividing by the coverage rate; reports litres, US gallons and cans.

- Calculator id: `paint` · Category: Construction & Home (`construction`) · Tool name: `estimate_paint_needed`
- Canonical page: https://tttkmbb.com/construction/paint · This document: https://tttkmbb.com/construction/paint.md · JSON definition: https://tttkmbb.com/construction/paint.json

## Purpose

Estimates wall paint from the wall area (room length, width and height, or a given area), subtracting 1.9 m² per door and 1.4 m² per window, multiplying by the number of coats and dividing by the coverage rate; reports litres, US gallons and cans.

**Use when:** You need to know how much paint to buy for the walls of a room or for a known wall area, in litres or gallons and cans.

**Do not use when:** You need ceiling, floor or exterior siding paint with different coverage rates (enter the area and the product's coverage directly), or you need the wall area only (use rectangle).

## Input

| Parameter | Type | Unit | Required | Description |
| --- | --- | --- | --- | --- |
| `unit_system` | enum: metric \| imperial |  | optional, default "metric" | Unit system of the length inputs (metric: m / cm / mm; imperial: ft / in). Outputs are reported in both systems. |
| `room_length` | number | m or ft | optional | Room length (m or ft). Used with room_width and wall_height when wall_area is not given. (> 0, max 1000) |
| `room_width` | number | m or ft | optional | Room width (m or ft). (> 0, max 1000) |
| `wall_height` | number | m or ft | optional | Floor-to-ceiling height (m or ft). (> 0, max 100) |
| `wall_area` | number | m² or ft² | optional | Gross wall area before openings (m² or ft²). When given, the room dimensions are ignored. (> 0) |
| `doors` | integer |  | optional, default 1 | Number of doors; 1.9 m² (20.5 ft²) is subtracted per door. (min 0, max 100) |
| `windows` | integer |  | optional, default 1 | Number of windows; 1.4 m² (15.1 ft²) is subtracted per window. (min 0, max 100) |
| `coats` | integer |  | optional, default 2 | Number of coats. Two coats are standard for colour changes; primer is not included. (min 1, max 5) |
| `coverage` | number |  | optional | Coverage from the tin: m² per litre in metric (default 10) or ft² per US gallon in imperial (default 350). Typical emulsion covers 10–14 m²/L (350–400 ft²/gal). (> 0) |
| `can_size` | number |  | optional | Litres per can (metric, default 5) or US gallons per can (imperial, default 1); used for the can count. (> 0) |

## Output

| Field | Type | Unit | Description |
| --- | --- | --- | --- |
| `gross_wall_area_m2` | number | m² | 2 × (length + width) × height, or wall_area. |
| `gross_wall_area_ft2` | number | ft² | Gross wall area in square feet. |
| `paintable_area_m2` | number | m² | Gross area minus 1.9 m² per door and 1.4 m² per window. |
| `paintable_area_ft2` | number | ft² | Paintable area in square feet. |
| `paint_liters` | number | L | paintable_area × coats / coverage, in litres. |
| `paint_gallons` | number | US gal | Same amount in US gallons (1 gal = 3.785 L). |
| `cans_needed` | integer |  | ceil(paint needed / can_size). |
| `can_size_used` | string |  | Can size assumed for the can count. |

## Formula

`gross = 2 × (room_length + room_width) × wall_height (or wall_area); paintable = gross − 1.9 m² × doors − 1.4 m² × windows; litres = paintable_m² × coats / coverage_m²_per_L; gallons = litres / 3.785; cans = ceil(litres / can_size). Imperial coverage: ft²/gal × 0.09290304 / 3.785411784 = m²/L.`

The door (1.9 m² ≈ 0.9 × 2.1 m) and window (1.4 m²) deductions are conventional averages; real coverage depends on surface texture, porosity, colour change and application method, so read the coverage figure from the product label.

## Data Sources

- Sherwin-Williams – Paint calculator FAQ (a gallon covers about 350–400 sq ft) — https://www.sherwin-williams.com/en-us/color/color-tools/paint-calculator (reference, retrieved 2026-09-23)
- Dulux – Paint calculator (coverage varies by surface and product) — https://www.dulux.co.uk/en/paint-calculator (reference, retrieved 2026-09-23)

Data freshness: `static`. Deterministic formula with fixed constants; results never go stale. Inputs supplied by the caller determine the output.

## API

- `GET https://tttkmbb.com/api/v1/calculate/paint?`
- `POST https://tttkmbb.com/api/v1/calculate/paint` with JSON body `{"inputs": {…}}`
- Response: unified envelope (`success`, `request`, `result.values`, `result.units`, `sources`, `freshness`, `timestamp`, `next_actions`, `links`); see https://tttkmbb.com/docs/response-format.md
- Schema: https://tttkmbb.com/api/v1/calculators/paint · OpenAPI operationId `estimate_paint_needed` in https://tttkmbb.com/openapi.json
- Authentication: none. Rate limit: fair use, see https://tttkmbb.com/docs/rate-limits.md.

## MCP

- Server: `https://tttkmbb.com/mcp` (Streamable HTTP, JSON-RPC 2.0, no auth)
- Tool:  `run_calculator` with `{"calculator_id": "paint", "inputs": {…}}`

## Example

- 5 m × 4 m × 2.4 m, 1 door, 2 windows, 2 coats, 10 m²/L, 5 L cans: inputs `{"unit_system":"metric","room_length":5,"room_width":4,"wall_height":2.4,"doors":1,"windows":2,"coats":2,"coverage":10,"can_size":5}` → `{"gross_wall_area_m2":43.2,"gross_wall_area_ft2":465,"paintable_area_m2":38.5,"paintable_area_ft2":414.41,"paint_liters":7.7,"paint_gallons":2.03,"cans_needed":2,"can_size_used":"5 L"}`
- 15 ft × 12 ft × 8 ft, 2 doors, 2 windows, 2 coats, 350 ft²/gal, 1 gal cans: inputs `{"unit_system":"imperial","room_length":15,"room_width":12,"wall_height":8,"doors":2,"windows":2,"coats":2}` → `{"gross_wall_area_ft2":432,"gross_wall_area_m2":40.13,"paintable_area_ft2":360.96,"paint_gallons":2.06,"paint_liters":7.81,"cans_needed":3,"can_size_used":"1 gal"}`

```
GET https://tttkmbb.com/api/v1/calculate/paint?unit_system=metric&room_length=5&room_width=4&wall_height=2.4&doors=1&windows=2&coats=2&coverage=10&can_size=5
```

## Limitations

You need ceiling, floor or exterior siding paint with different coverage rates (enter the area and the product's coverage directly), or you need the wall area only (use rectangle). The door (1.9 m² ≈ 0.9 × 2.1 m) and window (1.4 m²) deductions are conventional averages; real coverage depends on surface texture, porosity, colour change and application method, so read the coverage figure from the product label. All values are computed from the formula above; no measurement or live data is involved.

## FAQ

**Does this include primer or the ceiling?**

No. Primer covers only 200–300 ft²/gal (5–7 m²/L) and is estimated separately; for the ceiling enter its area as wall_area with doors = 0 and windows = 0.

**Why litres and gallons at the same time?**

Paint is sold in litres in most countries and in US gallons/quarts in the USA; both are reported from the same paintable area so either label can be used.

**What if coverage is given per coat on the tin?**

Coverage rates on labels are always per coat; this calculator multiplies by the number of coats, so enter the label value unchanged.

## Related

- [Wallpaper Calculator](https://tttkmbb.com/construction/wallpaper.md) — Rolls of wallpaper for the same walls.
- [Drywall Calculator](https://tttkmbb.com/construction/drywall.md) — Sheets of plasterboard for the same walls.
- [Flooring Calculator](https://tttkmbb.com/construction/flooring.md) — Floor material for the same room.
