SHP GPX
File conversion

Convert SHP to GPX

QUICK ANSWER
Is it possible to convert SHP to GPX?
Yes - SHP converts to GPX.

Load the Shapefile in QGIS and export as GPS eXchange Format, or use MyGeodata Cloud. GPX requires WGS 84 coordinates, so if your Shapefile uses a projected coordinate system, reproject during export or features will land in the wrong location.

2 programs
Also to GPX: TCX · LOC · KMZ

On this page

Tested on macOS, Windows & Linux
Last verified Oct 2026

More free converters

HEIC, PNG, WEBP, MP3 and more - every tool here is free.

Open the toolbox

Why convert SHP to GPX?

GPX is the standard format for GPS devices and apps such as Garmin devices, Strava, and most trail or routing apps. Route data, trail centerlines, and point locations stored in a Shapefile need to be in .gpx to load onto a GPS unit or share with GPS software.

How to convert SHP to GPX

QGIS OPEN-SOURCE

Add the .shp via Layer > Add Layer, right-click the layer, choose Export > Save Features As, set format to GPS eXchange Format, and set CRS to EPSG:4326.

Programs that convert SHP

MyGeodata Cloud
QGIS

About these formats

Quality & what to watch

  • GPX only supports waypoints (points) and tracks or routes (lines) - polygon features have no GPX equivalent and will be dropped or cause an error.
  • GPX requires WGS 84 (EPSG:4326); if your Shapefile uses a projected CRS and you skip reprojection, GPS points land in the wrong location or the file is invalid.
  • Most Shapefile attributes are not preserved in GPX, which stores very little metadata per feature.

Frequently asked questions

Do I need all Shapefile component files?
Yes - the .shp, .dbf, .shx, and ideally .prj must all be in the same folder; a lone .shp will not convert correctly.
What if my Shapefile contains polygons?
Polygons have no GPX equivalent and will be dropped; consider converting to KML instead, which supports polygons.
Why does the coordinate system matter?
GPX always uses WGS 84 latitude/longitude; skipping reprojection means GPS features land in the wrong place or the output file is invalid.