Neatbo.

GPX point-budget simplification

Reduce GPX tracks to a specified total point budget while preserving original nodes and segment endpoints.

Browser-local processingInputGPX / point targetOutputSimplified GPX / measured deviationUp to 10 MiB per file · File limit: 1
  1. 1Add input
  2. 2Adjust settings
  3. 3Get your result

Tool input and files are processed in this browser without being uploaded.

Your input

Inputs are kept temporarily in this tab when switching tools. Refreshing or closing clears them; large results may need to be regenerated.

⌘ / Ctrl + Enter to run

or drag and drop it here

Files stay on this device. Your originals stay unchanged.

.gpx

Up to 10 MiB per file · File limit: 1

    Options

    Complete the required options first. You can keep the defaults for the rest.

    Preparing the tool…

    Before you start

    Create a track that meets a device point limit. Selected original XML nodes keep coordinates, elevation, time and namespaced extensions. Deterministic maximum-error subdivision preserves segment endpoints; the full report maps retained indices and measures actual deviation.

    How to use this tool

    1. Choose the GPX and set a total maximum point count.
    2. Choose whether to report deviation or require a maximum deviation.
    3. Review retained indices and measured error, then download the simplified GPX and reports.

    Supported inputs and limits

    One GPX1.0/1.1 up to 10 MiB, 10,000 points, 2,000 segments, depth32, 200,000 XML elements and 10 million distance evaluations. The total point target must cover every segment's mandatory endpoints.

    Local equirectangular metric with mean Earth radius6,371,008.8m and mid-bounds origin; extent at most5° in each coordinate, latitude within±80°, no antimeridian crossing. Deviation is point-to-retained-segment in this declared plane, not a global geodesic guarantee. Required error bound fails if the target cannot satisfy it. No GPS device protocol compatibility is promised.

    Worked example

    Example input

    A real 2,500-point track with time, elevation and Unicode extensions; maximum500 points.
    Example options
    {"maxPoints":500,"errorPolicy":"report","maxErrorM":10}

    Example output

    500 original nodes, first/last retained, exact XML fields preserved and independently measured maximum deviation.

    When something does not work

    Increase the point target, relax the required error bound, or use a supported local track. Split distant or antimeridian-crossing tracks before this tool.

    Frequently asked questions

    Are time, elevation and extensions changed?

    The exact original selected point XML nodes remain. Unselected point nodes are removed; other metadata and comments remain.

    Can every track fit an arbitrary point limit?

    No. A target below mandatory segment endpoints fails, as does an unmet required error bound or work budget.

    Documentation & further reading

    Related tools