Enter an area in any field, then convert it to the other twelve units. A point is the decimal separator, and every refused input explains itself.
Runs locally in your browserType an area into any of the thirteen rows and press Convert next to it. The page fills every other row with the same area in its own unit, from square kilometres down to square inches, and the line under the buttons repeats which value and unit were converted.
The conversion runs in your browser: nothing is uploaded, and the page keeps working offline once it has loaded. Every value is calculated through the square metre with fixed definitions, so the same input always produces the same result.
All thirteen rows are converted through one intermediate value, the square metre. Metric: 1 km² = 1 000 000 m², 1 ha = 10 000 m² = 0.01 km², 1 a = 100 m², and 1 m² = 100 dm² = 10 000 cm² = 1 000 000 mm². Imperial and US customary, on the international foot: 1 mi² = 2 589 988.110336 m² = 640 acres, 1 acre = 4046.8564224 m² = 160 rd² = 4840 yd² = 43 560 ft², 1 rd² = 25.29285264 m² = 272.25 ft², 1 yd² = 0.83612736 m² = 9 ft², 1 ft² = 0.09290304 m² = 144 in², and 1 in² = 0.00064516 m² = 6.4516 cm².
Because the definitions are fixed rather than measured per case, a result here can be reproduced in any other converter that uses the international foot, the international acre and the international mile. If you work with US survey units instead, the survey acre is 4046.87261 m², about four parts per million larger than the acre used here, and the difference becomes visible in the sixth significant digit of an acre or a square mile.
Binary floating point cannot hold 0.09290304 exactly, so each result is rounded to fourteen significant digits before it is displayed. That is why 1 ft² is shown as exactly 144 in² and 1 m² as exactly 0.000001 km², instead of the near-misses that raw floating point arithmetic produces.
Between 1e-6 and 1e12 a value is written as a plain decimal number; outside that range exponent notation is used, for example 3.8610215854245e-7 for 1 m² in square miles. Exponent notation is accepted on input too, no thousands separators are added, and a value that was typed back into another row returns the original number.
An empty field, letters, two decimal points, a decimal comma, a negative number and a value too large for a double are all refused with a message under the buttons that names the problem instead of leaving the row blank. A comma is reported separately, because in Spanish, Portuguese, German and French the usual decimal separator is a comma and 1,5 has to be written as 1.5 here.
After a refused conversion the field you typed in keeps its text so you can correct it, while the other twelve rows are emptied so no value from the previous run is mistaken for a result. Nothing is filtered as you type: a number that is typed, pasted or filled in by a password manager is read exactly as it stands, and rejected with an explanation rather than silently rewritten.