PUBLISHED | 5 min read

How to convert golf course scorecards into geodata

Last edited: Oct 24, 2026 - Published Oct 24, 2026
Listen
--:--
How to convert golf course scorecards into geodata
Quick Quiz

What does georeferencing a scanned scorecard or map actually do?

Select one answer.

Why your scorecard isn't geodata yet

A scorecard gives you yardages, par, and hole numbers. It does not give you coordinates. To render a hole in a map, you need geometry: polygons for greens and fairways, points for tees and pins, and a coordinate reference system that ties those shapes to the real world. The gap between a printed card and a usable GeoJSON file is a georeferencing step, and it is the part most developers underestimate.

Georeferencing is the process of taking a scanned map or image and assigning it a real-world location, so it can be used alongside other geographic data in GIS platforms (Van Pelt and Opie Library). Do that for a scorecard or aerial image, and every shape you trace inherits real coordinates.

Step 1: Decide what you actually need to map

Not every project needs full polygon coverage. Match the data to the product:

  • Yardage app: tee points, green center points, and a centerline per hole.
  • Interactive course map: fairway and green polygons, plus bunker and water hazard polygons.
  • Tournament or green-reading tool: green contours, pin positions, and slope direction (Live Tourney).
  • Operations or irrigation: sprinkler heads, turf zones, drainage lines, and course boundary (Atlas).

Write this list down before you open any tool. It determines how much tracing work you are signing up for.

Step 2: Get a georeferenceable base image

You have two realistic options.

  1. Aerial or satellite imagery. Highest accuracy, because the image already has real coordinates. You trace directly on top of it.
  2. A scorecard or routing map scan. Useful when imagery is outdated or the card shows features imagery hides. You must georeference it first.

If you go with the scan, identify stable features to anchor it: tee boxes, green centers, bunker corners, path intersections. Street intersections are the classic choice for historical maps because they rarely move (Geospatial Historian). On a golf course, greens and tee complexes play the same role.

Step 3: Georeference the image

In QGIS or ArcGIS Pro, add a reference layer with accurate coordinates, then add your scanned image as a raster. Place control points that pair a pixel on the scan with a known real-world location. Aim for at least four well-spread points; if the scan is distorted, use more and consider a spline transformation, which needs at least ten control points (Van Pelt and Opie Library).

Check your work by toggling the reference layer on and off. If features drift when you zoom, your control points are too clustered.

Step 4: Trace features into vector layers

Create separate layers for greens, fairways, bunkers, water, and tee boxes. Keep them separate — merging them early makes later edits painful. Trace each feature as a polygon, and keep hole centerlines as lines with a hole number attribute.

If you are working from a raster with no georeferencing, you can still trace in pixel space and convert later. Tools exist that let you paste a screenshot, pin it, drag to scale, trace the border, and export GeoJSON in 5–15 minutes instead of up to 45 (Jackson Lester). That speed matters when you have hundreds of holes to process.

Step 5: Export and validate GeoJSON

Export your layers as GeoJSON. GeoJSON is a plain-text format built on longitude and latitude values, so every coordinate must be in a real-world CRS — typically WGS84 (GIS Stack Exchange).

Before shipping, run these checks:

  • Coordinate range: longitudes between -180 and 180, latitudes between -90 and 90.
  • Geometry type: polygons closed, no self-intersections.
  • File size: trim coordinate precision. Full float precision bloats files for no visual gain (Sparkgeo).
  • Attribute completeness: every feature carries a hole number and a feature type.

You can inspect and edit the result in a browser-based editor, or extract all coordinates to CSV for a quick sanity check (GeoUtil).

Step 6: Automate the repeatable parts

Manual tracing does not scale past a handful of courses. Once your layer schema is stable, script the boring parts: polygonize, dissolve, smooth, and export. The tracing itself is the only step that genuinely needs human judgment.

A practical pipeline looks like this:

  1. Ingest imagery or georeferenced scan.
  2. Trace or auto-extract candidate polygons.
  3. Clean geometry (repair, simplify, snap).
  4. Attach hole and feature attributes.
  5. Export GeoJSON and validate.
  6. Publish to your API or tile server.

Common mistakes to avoid

  • Tracing on an ungeoreferenced image and exporting anyway. You get shapes with pixel coordinates that render in the wrong place.
  • Mixing CRS between layers. Everything must land in the same system before export.
  • One giant layer for all features. You lose the ability to style or query by type.
  • Skipping validation. A single malformed polygon can break a renderer.

Quick checklist

  • Feature list defined for your product
  • Base image georeferenced with 4+ spread control points
  • Separate layers per feature type
  • Hole number attribute on every feature
  • Exported as GeoJSON in WGS84
  • Coordinate ranges and geometry validated
  • Precision trimmed for file size

How the Featured Expert Can Help

Golfbert provides a geodata API for building golf course maps, with detailed hole information and interactive features for developers. It covers thousands of US courses and returns detailed hole polygons and vector coordinates, so you can fetch all holes for a course or pull polygon data for a single hole. If you would rather consume clean geodata than trace it yourself, review the API access, documentation, and pricing plans at golfbert.com.

Test your understanding

Before you commit to a tracing workflow, make sure you understand what georeferencing actually does to an image.

Back to homepage