Floor Plan Maker

Free floor plan maker: draw walls, doors, windows and furniture, get dimensions and area in m² or ping, view in 3D, share by link. No sign-up, no upload.

  • Automatic room area
  • Doors & furniture
  • 3D walkthrough
  • Share by link

Your floor plan is saved automatically in this browser (localStorage) and never uploaded. Export JSON before switching devices or clearing browsing data.

🔒 Everything is calculated in your browser. No data is sent to any server.

When to use it

  • House and apartment hunting: Draw the plan from a listing’s layout or your own measurements to check room sizes and whether your furniture fits.
  • Planning a remodel or move: Try beds, sofas and cabinets in different layouts on the plan before deciding what size to buy.
  • Sharing with a designer or family: Send it with “Copy share link” so they can open the same plan and its 3D view.
  • Renting out a room: Draw the room layout and size, then add the exported PNG to your rental listing.

How to use

  1. Drag out a room with Rectangle room, or click point by point with Draw wall; while drawing you can type a length in centimeters and press Enter. Once the walls close into a loop, the side panel shows its area.
  2. Click a door or window in the library, then click a wall to place it. Furniture is dropped in the center of the view; select it to drag, pull the corners to resize, or drag the round handle to rotate. The side panel accepts exact numbers.
  3. Press 3D to see the space in 3D and switch to first-person to walk inside. When you are done, Export PNG saves an image, and Export JSON saves a backup you can load again with Import JSON.

Worked example

The sample you see on first visit is a 6 m × 4 m studio with 12 cm walls. The panel shows Room 1: centerline area 24.00 m² (7.26 ping), net interior area 22.81 m² (6.90 ping), perimeter 20.00 m. The net area removes half a wall thickness (6 cm) on every side, giving 5.88 m × 3.88 m.

Add a 10 cm partition 2.5 m from the left wall of the same studio, with both ends on the wall centerlines, and it splits into two rooms: Room 1 is 10.00 m² (3.03 ping) centerline, 9.27 m² (2.81 ping) net, 13.00 m perimeter; Room 2 is 14.00 m² (4.24 ping) centerline, 13.15 m² (3.98 ping) net, 15.00 m perimeter. The two centerline areas still add up to 24.00 m².

Use Quick room to make a 1000 × 1000 cm space with 15 cm walls: the centerline area is 100.00 m² (30.25 ping) and the net interior area is 97.02 m² (29.35 ping). The thicker the walls, the bigger the gap between the two figures.

Reading the results

  • The centerline area is measured along the middle of the walls and is close to how people casually describe a room's size. The net interior area is the floor you can actually use between wall faces; use it for flooring, rugs or checking whether furniture fits.
  • Values are rounded to two decimals, so 10 m², which is 3.025 ping, shows as 3.03 ping. The total row adds the room areas first and converts afterwards, rather than adding the rounded numbers on screen.
  • The perimeter is the length of the centerline loop. It gives a rough length for baseboards or crown molding, but the real inside perimeter is a little shorter (half a wall thickness less at each corner) and door widths are not subtracted.
  • If a room does not appear in the area panel, its walls are not really connected: wall endpoints must meet (drawing snaps to nearby endpoints), and a partition must end on the centerline of another wall.

How it works

  • All sizes are stored in centimeters, and a wall is a centerline plus a thickness. While drawing, an existing endpoint within 12 screen pixels is joined directly; with snapping on, angles snap to multiples of 15° and lengths to the chosen step (1, 5, 10 or 50 cm).
  • Finding enclosed rooms: walls are split at T-junctions and crossings, endpoints within 0.5 cm count as the same point, and walls that dangle from one end are removed repeatedly. The walls around each point are then sorted by angle and traced by always turning the same way; every loop with a positive area is a room, measured with the shoelace formula (cross-multiplying vertex coordinates).
  • Net interior area: each edge of the room is moved inward by half its wall thickness, the new corners are the intersections of neighboring offset lines, and the shoelace formula is applied again. If walls are thicker than the room so that an edge flips direction, the panel shows Not available.
  • Ping = square meters ÷ (400/121), the same factor as this site's unit converter; 1 m² = 10,000 cm².
  • The 3D view downloads three.js only the first time you open it, and walls are cut into pieces around doors and windows to form openings. First-person collision treats your body as a 22 cm radius cylinder: doors that start at the floor and are at least 180 cm tall can be walked through, windows cannot.

Limitations

  • Walls are straight lines only, so curved walls are not supported; angled walls are fine and the area follows the corner points.
  • Walls that stand alone inside a room without touching its outline (such as a column drawn with four walls) are not subtracted from the surrounding room, and a partition that stops at a wall face instead of the centerline does not split the room.
  • The net area does not subtract columns, shafts or furniture. Areas are for planning only and do not replace an official survey or the area on a title deed.
  • One floor per plan. The plan lives in one browser's localStorage and disappears if site data is cleared; the 3D view needs a browser with WebGL.

FAQ

How is the area converted to ping?

1 ping (the Taiwanese floor-area unit, same as the Japanese tsubo) equals 400/121 m², about 3.3058 m². A 6 m × 4 m room is 24 m², or 7.26 ping. The tool lists both the area measured to the wall centerlines and the net interior area after wall thickness.

Why does it differ from the area on my lease or deed?

Official floor areas are usually measured to the outer face of exterior walls and may include balconies and shared common areas. This tool only measures the spaces enclosed by the walls you draw. For what actually fits inside, use the net interior area.

Where is my floor plan saved? Can I lose it?

Every change is saved automatically in this browser's localStorage, so it is still there when you come back, but it is never uploaded. Clearing site data, using a private window or switching devices means you won't see it, so use Export JSON to keep a backup of important plans.

Does it work on a phone?

Yes. Drag an empty area with one finger to pan, pinch to zoom, and drag a selected item to move it. When drawing walls, each tap adds a point; tap Finish walls when done. The screen is small, so complex layouts are easier on a computer.

How do I show my floor plan to family or a designer?

Press “Copy share link”. Walls, doors, windows and furniture are compressed into the part of the URL after #, so they see the same plan and can switch to the 3D view. That part is never sent to the server. If you only need a picture, use “Export PNG”.

How do I measure a room accurately?

Use a tape measure or laser measure to get the length and width along the inside of the walls (in centimeters); for doors and windows, measure their width and distance from the corner. When drawing a wall, you can type the length and press Enter.

Can it calculate the usable floor area?

Once walls enclose a room, both the “Centerline area” and the “Net interior area” (minus wall thickness) are shown; the net interior area is closer to the space you can actually use.

Can I print my floor plan?

Click “Export PNG” to save it as an image and print that. Dimensions and a scale bar are shown on the plan, so it’s easy to compare with the real space.

References