Skip to content
GIS for History

To digitise features from an old map you georeference the scan, create vector layers for each feature type, then trace the map's lines, points and areas on screen using your GIS's editing tools. The result is measurable, queryable data — field areas, road lengths, building counts — rather than a flat image. In QGIS the whole workflow uses the built-in digitising toolbar with snapping enabled; no plugins needed.

Before you trace: set the map up properly

Two prerequisites save hours of rework:

  1. Georeference the scan first so traced features land in real coordinates with correct lengths and areas. An un-georeferenced trace is just a drawing.
  2. Set your project CRS to a metric grid (EPSG:27700 in Britain) so QGIS reports areas in square metres and lengths in metres, not degrees.

Then plan your layers. One feature type per layer keeps attributes and styling sane.

Which geometry type for which feature?

Feature on the mapGeometryLayer example
Wells, milestones, crossesPointlandmarks
Roads, rivers, wallsLineroutes
Fields, parishes, lakesPolygonparcels
BuildingsPolygon (or point at small scale)buildings

Create each as a new GeoPackage layer (Layer > Create Layer > New GeoPackage Layer), defining its attribute fields up front — a name, a type, and crucially a source field recording which sheet it came from.

How do you actually trace in QGIS?

text
1. Select the target layer in the Layers panel
2. Toggle Editing (the pencil icon)
3. Add Feature (the matching point/line/polygon tool)
4. Click vertices along the feature; right-click to finish
5. Enter the attributes when prompted
6. Save edits frequently (Ctrl+S); Toggle Editing off when done

Work zoomed in enough that the map's line is a few pixels wide — tracing at full extent guarantees sloppy geometry.

Why snapping and topology are non-negotiable

Adjacent fields share boundaries. If you trace each polygon independently, you get slivers (tiny gaps) and overlaps that wreck later area calculations. Turn on:

  • Snapping (Project > Snapping Options): snap to vertex and segment, tolerance ~10 px.
  • Topological editing: shared edges move together.
  • Avoid overlap on active layer: new polygons clip to existing neighbours.
text
Project > Snapping Options
  [x] Enable snapping        Mode: vertex + segment
  Tolerance: 10 px
  [x] Topological editing
  [x] Avoid overlap on active layer

With these on, you trace a shared boundary once and the neighbour reuses it exactly.

What attributes should you capture while tracing?

Resist the urge to record only geometry. The minimum useful attribute set per feature:

  • name — as written on the map (preserve original spelling).
  • type — your controlled vocabulary (arable, meadow, road, building).
  • source — sheet number and date.
  • certainty — high / medium / low, for features you guessed.

These turn a pretty trace into analysable evidence and let you cite exactly where each polygon came from.

How do you check quality before you trust the data?

Run two passes. First, Vector > Geometry Tools > Check Validity to catch self-intersections and unclosed rings. Second, the Topology Checker plugin with rules like "must not have gaps" and "must not overlap" on your polygon layer. Fix every flagged feature; a single overlap can double-count area in a later summary. Finally, calculate areas ($area in the field calculator) and sanity-check totals against any figure the map itself records.

When is automation worth it?

Clean, printed line work (a 25-inch OS sheet) can be partly vectorised with raster-to-vector tools or ML segmentation, saving real time. But hand-drawn estate maps, faded ink, and overlapping symbols defeat most automation and leave you cleaning artefacts longer than tracing would have taken. Use automation for repetitive printed detail; hand-digitise everything interpretive.

Key Takeaways

  • Georeference the scan and set a metric CRS before tracing anything.
  • Keep one geometry type per layer and define attribute fields up front.
  • Trace zoomed in, saving edits often, in the built-in QGIS digitising toolbar.
  • Enable snapping, topological editing and avoid-overlap to prevent slivers and gaps.
  • Capture name, type, source and certainty so the trace becomes citable evidence.
  • Validate geometry and topology before trusting any area or length calculation.

Frequently Asked Questions

What does digitising features from an old map mean?

It means tracing the lines, points and areas you see on a scanned map into editable vector data — roads, field boundaries, buildings — so they can be measured, queried and analysed. You georeference the scan first, then draw over it on screen.

Do I have to georeference the map before digitising?

Yes, in almost all cases. Georeferencing places the scan in real-world coordinates so your traced features have correct positions, lengths and areas. Tracing an un-georeferenced image only gives you a picture, not measurable data.

Should I use points, lines or polygons?

Match the geometry to the feature: points for wells or milestones, lines for roads and rivers, polygons for fields, parishes and lake outlines. Keep each feature type in its own layer so attributes and styling stay clean.

How do I avoid gaps and overlaps between adjacent polygons?

Enable snapping and topological editing in QGIS so shared edges are traced once and reused. For an existing layer with slivers, run the Check Geometries or Topology Checker tools and fix gaps and overlaps systematically.

How long does it take to digitise a map sheet?

It varies enormously with detail: a few main roads might take 20 minutes, while every field on a tithe map can take many hours. Budget by feature count, not by sheet, and consider whether you truly need every feature.

Can I automate tracing instead of doing it by hand?

Partly. Raster-to-vector tools and ML segmentation can extract clean printed lines, but historical maps with hand-drawn detail, overlapping symbols and ageing paper usually still need manual cleanup. Hand-digitising remains the reliable default.