simplemaplab

Map Drawer

Free online map drawing tool. Draw lines, polygons, freehand paths, arrows, and text on a real cartographic basemap — every shape comes back with accurate kilometres, miles, square kilometres, square miles, hectares, or acres. Eight base maps, undo / redo, mobile pinch-zoom, autosave. No sign-up, no watermark.

Quick-start examples
1Pick a base map & tool below — Line, Polygon, Freehand, Arrow, or Text.
2Tap the map to draw. Lines / polygons take multiple clicks (double-click to finish). Freehand and arrows draw on drag. To pan the map, switch to Select / Pan.
3Real km/mi shown live as you draw. Each object has its own color, thickness, dash style, and label.
Base map
Drawing tool
Color
Stroke
Dash
Units
Title
Loading World
Layers (0)Active tool: line

No drawings yet. Pick a tool above and tap the map, or load a quick-start example.

Five drawing tools, one map

Most online "draw on a map" tools give you a single primitive — drop pins, or fill polygons, or sketch freehand. Map Drawer combines five primitives that cover almost every map-annotation use case: Line (multi-segment paths), Polygon (closed shapes with area), Freehand (drag-to-sketch), Arrow (directional vectors), and Text (labels). Each one is one click away on the toolbar; mix and match within a single drawing.

The other distinctive feature is honesty about geography. Every distance and area on screen comes from spherical math, not pixel measurements — see the Real geographic measurements section for the math. That means a freehand sketch of the John Muir Trail returns ~340 km, a polygon outline of Texas returns ~696,000 km², and a JFK → LHR arrow reports the correct 5,571 km great-circle distance — automatically.

New here? The fastest way to feel the tool is to load one of the three quick-start presets in the sidebar — Cross-country road trip, Trans-Atlantic flight, or European migration arrows. Each loads a working map you can edit, restyle, or delete piece by piece. Five seconds from open to "drawing on a map".

How to draw on a map online

Six steps from blank base map to a finished annotated drawing — saved in your browser, ready for sharing or export.

  1. Pick a base map. Choose World, United States, or any of the six continents. The base map sets the geographic frame. Switch base maps freely from the toolbar — every basemap shares the same drawing tools and history.
  2. Choose a drawing tool. Pick from five drawing tools: Line (multi-segment paths), Polygon (closed shapes with area), Freehand (drag to sketch), Arrow (a→b vectors), and Text (place a label anywhere). Use Select to move, restyle, or delete an existing object.
  3. Draw on the map. For Line and Polygon, click to add vertices and double-click or press Enter to finish. For Arrow, click the start then click the end. For Freehand, press and drag — release to finish. For Text, click where you want the label and type. Pinch to zoom, two-finger drag to pan.
  4. Style each shape. Pick a stroke color from the 12-color palette (or enter any hex), choose stroke width (1–6px) and dash style (solid, dashed, dotted). Polygons additionally accept a fill opacity. Style choices apply to the next shape; select an existing shape to restyle it after the fact.
  5. Read the live measurements. Lines show real kilometres or miles next to the cursor as you draw. Polygons show real area (km² / mi² / acres / hectares) once they have at least three vertices. Arrows show distance between endpoints. All values are computed by inverting the projection and using d3.geoLength / d3.geoArea on a 6371 km Earth — the same math used in production GIS.
  6. Save, undo, or export. Every shape is saved to your browser automatically. Press Ctrl+Z / Ctrl+Y to step through 50 entries of undo / redo history. Use the layers panel to reorder, hide, rename, or delete individual shapes. Export the entire drawing as PNG or SVG (coming in next polish round) or copy a shareable URL.

Quick-start examples

Three preset drawings, each demonstrating a different combination of tools and basemap. Click any preset in the sidebar to load — your existing drawing is replaced and goes into the undo stack so nothing is lost.

Cross-country road trip

A six-vertex line connecting Chicago → Denver → Salt Lake City → Reno → Sacramento → San Francisco on the United States basemap, with text labels at start, midpoint, and end. Total length renders as ~4,500 km / 2,800 mi. Edit the line by selecting and adjusting, or trace your own variant.

Trans-Atlantic flight

A single arrow from JFK to London Heathrow on the World basemap, with text labels at both endpoints. The great-circle distance reports as 5,571 km / 3,462 mi — the same answer airline route maps use.

European migration arrows

Three colored arrows on the Europe basemap: Paris → Berlin (red), Rome → Brussels (blue), and Moscow → Berlin (purple, dashed). Demonstrates how multi-arrow flow diagrams compose from the same arrow primitive.

What people use Map Drawer for

Six recurring patterns we see in the analytics. Each one combines the five drawing tools in a different ratio.

Plan a road trip or hike route

Click the start, click each waypoint, double-click to finish — and you have a multi-segment line with the total distance in real miles or kilometres. Perfect for sketching a coast-to-coast US road trip, a long-distance bike route, an Appalachian Trail section, or a coastal sail. The Cross-country road trip preset (Chicago → SF via Denver, SLC, Reno, Sacramento) loads as a working example you can adapt to your own route.

Annotate flight paths and travel maps

Drop arrows from origin to destination — JFK → LHR, LAX → NRT, BOM → DXB — with the great-circle distance computed automatically. Use thicker arrows for hub-to-hub routes, dashed for connections. Add text labels for each airport. The Trans-Atlantic flight preset shows the convention. Pairs naturally with the Distance Between Two Places tool when you want a numeric answer without the visual.

Draw migration, trade, or supply-chain flows

Multiple arrows on one map turn into a flow diagram. Migration routes (Paris → Berlin, Rome → Brussels, Moscow → Berlin), historical trade routes (Silk Road, triangular trade), supply-chain origin-destination pairs, refugee movements, troop deployments. Different colors and dash styles separate flow types; the European migration preset is a starting template.

Outline a service area or sales region

Polygon mode lets you outline an arbitrary territory — a delivery zone, a sales region, a school catchment, a state or national park. The polygon shows real square miles, square kilometres, acres, or hectares, computed on a sphere — accurate even for very large regions where flat-earth math breaks down. Pairs naturally with our Map Area Calculator when you only need the area number.

Sketch hiking trails and outdoor routes

Freehand mode is built for organic shapes — drag your finger or mouse to sketch a hiking trail, a coastline detail, a cycling loop, a kayaking path. Freehand traces capture the actual curve of a trail rather than approximating it as straight lines. The total path length still renders in real km / mi, so a freehand sketch of the John Muir Trail will report the right ~340-km figure.

Create a battle / history / strategy map

Combine all five tools: polygons for territory, arrows for troop movements, lines for fortification walls or front lines, freehand for terrain features, and text for unit names and dates. The result is a publication-grade strategic map — the kind you see in textbooks, board-game manuals, or History Channel explainers. No vector-illustration software needed; everything stays geographically accurate.

Drawing tools — when to use which

Five primitives sounds like a lot, but each one has a clear best use. The table below maps each tool to the situation where it wins, with a typical example.

ToolWhen to useExample
LineYou want a multi-segment path with vertex control — every click adds a point, double-click finishes. Length renders in real km / mi.Road trip from Chicago to San Francisco via 5 waypoints.
PolygonYou want a closed region with area. Click vertices, finish to close. Area renders in km² / mi² / ha / acres.Outline a delivery zone, a national park, or a sales territory.
FreehandYou want an organic curve that follows your finger or mouse exactly. Press and drag — release to finish.Sketch a coastline, a hiking trail, or an irregular boundary.
ArrowYou want a directional vector from one point to another — origin and destination, before and after.Flight path JFK → LHR, migration route, troop movement.
TextYou want to add a label anywhere on the map. Click, type, done. Sized to the current zoom.Mark city names, label a region, annotate an elevation.

A common pattern: start with a polygon for the region of interest, drop arrows for movement within or across it, drop circles (via repeated text or selectable shapes) for points of interest, and finish with text labels. The layers panel keeps everything organised; the undo stack means experimenting is cheap.

Real geographic measurements — the math

Most "draw on a map" tools either skip distance entirely (visual annotation only) or compute distance in screen pixels and label it "miles" — which is wrong by a factor of 2× to 50× depending on zoom and projection. Map Drawer does it the production-GIS way:

  1. Inverse projection. Every drawn point is in SVG coordinates of the basemap. We pass each point through the basemap projection\u2019s invert() function to recover longitude / latitude.
  2. Spherical computation. For lines, we feed the longitude / latitude sequence to d3.geoLength, which sums great-circle distances between consecutive points and returns radians. For polygons, d3.geoArea returns steradians.
  3. Earth radius. We multiply length by R = 6371.0088 km (the IUGG mean radius) to convert radians → kilometres, and area by R² to convert steradians → km². Then unit conversions for miles, hectares, acres.

The result is geographically correct on a sphere — accurate within a fraction of a percent for any drawing on Earth, including continental-scale polygons where flat-Earth approximations break down. The reference implementation is in MapDrawerClient.tsx if you want to inspect it (the project is open-source).

Caveat: this is sphere math, not ellipsoid math. The actual Earth is a slightly flattened ellipsoid (WGS84), so for surveying or legal-boundary use cases requiring sub-metre accuracy you should run the same coordinates through a geodesic library like GeographicLib. For almost every other use case — road trips, sales territories, hiking routes, flight paths, migration flows — the 0.3% sphere-vs-ellipsoid discrepancy is invisible.

Tips for clean map drawings

Lock to a single base map per drawing

Switching basemaps mid-drawing resets your shapes — the coordinate system has changed, so old SVG points don\u2019t map to the same lat/lng. Pick the base map first, draw second. For multi-region maps where you want the same shapes in different views, save the drawing on each basemap separately or use multiple browser tabs.

Use stroke width and dash style as semantic channels

Three styles times five widths = 15 visual channels per color. Use them to encode meaning: thicker = primary route, dashed = secondary, dotted = proposed. A single color (e.g. dark blue for "transport") with multiple styles reads cleaner than five different colors.

Limit polygons to convex shapes when possible

Polygons can technically include any vertex sequence, but self-intersecting polygons (figure-8 shapes, bow-ties) cause area math to behave unexpectedly. If you need a complex region, break it into multiple convex polygons and stack them.

Freehand for organic, line for precise

Freehand looks natural but is hard to edit. Line is precise but looks geometric. For a coastline, freehand wins. For a flight path, line wins. For a hiking trail, freehand starts and you switch to line for the long straight sections.

Add text last

Text labels overlap with shapes if added first. Draw all your shapes, place the labels last, and use the layers panel to nudge text on top of any shape it overlaps with. Text size scales with zoom — pick a zoom that approximates your final export size before placing labels.

Map Drawer vs other map drawing tools

Honest comparison against the alternatives. Each tool wins different scenarios — the table is a feature checklist, not a value judgement.

FeatureMap DrawerGoogle My MapsMapbox StudioIllustratorScribble MapsQGIS
Free, no sign-upFree tier limited— (paid)— (paid)✓ (open-source)
Real distance / area in km & mi— (visual only)
Five drawing primitives4 (no freehand)3
Mobile / touch-firstPartial
Pinch zoom + two-finger pan
Undo / redo (50 steps)
Public-domain basemaps includedGoogle basemapMapbox basemap— (BYO)Mapbox— (BYO)
Geographic accuracy (sphere math)
No watermark on exportWatermark on free
No learning curveMediumSteepSteepVery steep

Google My Maps is the closest sibling — drop pins, draw lines, share the result — but the basemap is locked to Google Maps styling, the drawing primitives are limited, and the result looks like a Google Map (good for sharing, not for publishing). Mapbox Studio gives the widest stylistic range but requires a paid account and an API key for non-trivial use. Illustrator is the publication-grade tool but you bring your own basemap and there is no geographic measurement. Scribble Maps is a direct competitor with similar primitives but free-tier limits, watermarks, and a less mobile-friendly UI. QGIS is the open-source professional tier — capable of anything Map Drawer does plus raster layers, database joins, and complex spatial analysis — but with a learning curve measured in weeks.

Available base maps

Eight base maps cover global, country, and continent scales. All boundaries come from public-domain Natural Earth (1:50m scale) and US Census Bureau TIGER/Line files. Switch freely from the toolbar; switching resets your drawing because the coordinate system changes.

World

195 countries · Equal Earth projection · Antarctica filtered

United States

50 states + DC · Albers USA projection (Alaska, Hawaii inset)

Europe

51 countries · Mercator centered on Germany

Asia

53 countries · Mercator

Africa

57 countries + territories · Mercator

North America

38 countries · Albers

South America

14 countries · Mercator

Oceania

26 countries · Pacific-centred Mercator

Related tools and resources

For a single-purpose annotator with markers and an auto-generating legend (instead of free drawing), use Map with Legend Maker. For coloring countries or US states by group, use Color a Map. For a polygon-only area calculator with cleaner UI, use Map Area Calculator. For a geodesic-circle drawing tool (radius from any point), use Map Radius Tool. For a two-point distance with bearing and direction, use Distance Between Two Places. For printable blank state and country outlines (PNG / SVG / PDF), browse our 110 free printable blank maps.

Frequently asked questions

Open Map Drawer, pick a base map (World, United States, or any continent), then choose a drawing tool — Line, Polygon, Freehand, Arrow, or Text. Click on the map to add points; for Freehand, press and drag. Double-click or press Enter to finish a multi-point shape. Pinch to zoom, two-finger drag to pan. Every shape is saved to your browser automatically — no sign-up.
For quick browser-based sketches with real geographic measurements, Map Drawer covers most needs — five primitives (line, polygon, freehand, arrow, text), accurate km / mi distance and area, eight base maps, undo / redo, mobile pinch-zoom, no sign-up, no watermark. For full GIS workflows with raster layers and database joins, QGIS is the open-source standard but takes weeks to learn. Google My Maps is good for tooltip-rich Google-Maps-style overlays but has limited drawing primitives and locked styling. For professional cartographic publication, Mapbox Studio (paid) or Adobe Illustrator (paid) give finer control.
Map Drawer projects every drawn point back to longitude / latitude using the inverse of the basemap projection (Equal Earth for World, Albers USA for the US, Mercator for most continents), then computes great-circle distance with d3-geo’s geoLength and spherical area with geoArea. Both are multiplied by an Earth radius of 6371.0088 km — the IUGG mean radius — to convert from radians and steradians to km and km². The result is geographically accurate even for very long distances or very large polygons, where flat-Earth approximations diverge.
Yes. Switch to Polygon mode, click each vertex (minimum three), and double-click or press Enter to close. The live overlay shows area in km² / mi² / ha / acres as you place vertices. Areas are computed on a sphere, so a polygon spanning continents will report accurate numbers. The Map Area Calculator tool is the same math packaged for area-only use.
Yes. Switch to Line mode, click each waypoint, and double-click or press Enter to finish. The total length displays in km or mi. For a simple two-point distance with bearing and direction, the Distance Between Two Places tool is faster.
Use Line mode to chain waypoints. Each click adds a vertex; double-click finishes. The total length is the sum of great-circle distances between consecutive points — accurate for road trips, sailing routes, flight legs, hiking sections. For a real road-following route (turn-by-turn directions), use a routing service like Google Maps or OpenStreetMap; Map Drawer draws the line you specify, not the road network.
Yes. The undo / redo stack holds up to 50 actions. Press Ctrl+Z (Cmd+Z on Mac) to undo, Ctrl+Y or Ctrl+Shift+Z to redo. Toolbar buttons offer the same control. Switching basemaps clears the history — the coordinate system has changed, so old shapes don’t map correctly.
Switch to Select mode (the arrow icon), tap the shape on the map or in the layers list, then press Delete or click the delete button in the layers panel. The action goes into the undo stack, so you can recover with Ctrl+Z.
You can restyle any shape from the layers panel — change color, stroke width, dash style, fill opacity, and (for text) edit the text content. A drag-to-move handle is on the roadmap; for now, the fastest way to reposition a small shape is to delete and redraw.
Yes. Map Drawer autosaves your basemap, all shapes, the active title, and your active drawing tool to your browser’s localStorage on every change. When you reopen the page, your map is exactly where you left it. The data never leaves your browser.
Antarctica is enormous on Equal Earth (the projection used for the World basemap) and crowds out the rest of the continents. We filter it from the world view so the inhabited world fills the frame. If you need to draw on Antarctica, switch to a different basemap — the continent reappears in any continent-level view that includes it.
PNG (high-resolution raster) and SVG (editable vector) export are coming in the next polish round. The export will include all your shapes, text, and the basemap at the current zoom and pan. SVG output will be fully editable in Illustrator, Inkscape, Affinity Designer, or any vector tool.
Yes. The toolbar collapses on small screens, touch targets are sized to ≥44px, and the map supports one-finger drawing, two-finger pan, and pinch-to-zoom. The active-tool pill row sits above the map so you don’t need to scroll back to the sidebar between strokes. Tested on iPhone 13 / Safari, Pixel / Chrome, iPad / Safari.
Yes. Switch to Arrow mode, click the start point, then click the end point — the arrow renders with a triangular arrowhead at the destination. Use arrows for flight paths, migration routes, troop movements, supply-chain links, or any directional vector. The arrowhead size scales with the stroke width, so thicker arrows render larger arrowheads.
Yes. Switch to Freehand mode, press the mouse button (or your finger on touch), drag to draw, and release to finish. Freehand traces store every sub-point, so the resulting curve is smooth and follows your motion exactly. The total path length still renders in real km / mi. Useful for organic shapes — coastlines, hiking trails, river bends — that polygon vertex math can’t capture cleanly.
Yes. The tool is free and the underlying basemap data (Natural Earth at 1:50m and US Census Bureau TIGER/Line) is public-domain (CC0). There is no watermark, no rate limit, and no account requirement. Use the exported maps in client decks, books, training materials, classroom handouts, commercial products, or anywhere else.
Data sources & methodology

Country boundaries: Natural Earth Cultural Vectors at 1:50,000,000 scale (CC0). 195 sovereign countries plus dependencies and disputed territories. US state boundaries: US Census Bureau TIGER/Line via us-atlas states-10m TopoJSON (public domain). Continent classification: 241 Natural Earth countries hand-mapped to seven continents. Distance: d3-geoLength on inverse-projected longitude / latitude sequences, multiplied by R = 6371.0088 km (IUGG mean Earth radius). Area: d3-geoArea on inverse-projected polygon rings, multiplied by R². Mile / acre / hectare conversions use NIST factors (1 mi = 1.609344 km, 1 acre = 0.40469 ha, 1 mi² = 2.58999 km²). All computation happens in your browser; no data leaves your device.

More SimpleMapLab tools

Map with Legend Maker

Drop markers, fill regions, get an auto-generating custom legend. Single-image cartographic deliverable.

Color a Map

Click any country, US state, or region to fill it with a color group. Categorical mapping.

Map Area Calculator

Draw a polygon on the map and measure its area in square miles, square km, acres, or hectares.

Map Radius Tool

Draw geodesic circles on an interactive map. Set radius from 1 to 3,000 miles.