Trip recording

OsmAnd Trip recording plugin is an essential tool for runners, sportsmen and tourists. It allows you to record your movement using your phone's GPS (and through other networks optionally). If you are going for a run, need to see your entire route after a walk around the city or measure the distance you covered, the plugin will help you.

(Image not available offline) (Image not available offline) (Image not available offline)

How to use it


You have to enter the Plugins menu, then select Trip recording and tap Enable. That's pretty much it. To start recording, you need to tap on the GPX widget in the upper-right corner of the map screen. Also, you can choose the logging interval which determines the time between recording moments in your track. The plugin is now working. You can start your trip and see the distance you've walked in the specific widget on the right. To view your track during recording, please tap 'Show on map'.

There's also an opportunity to add new waypoints to the track manually. Just tap on the location on map, choose Add GPX waypoint, name it the way you want. Then go to My places - My tracks or to My Tracks dashboard menu and hit the save button. Your waypoint is added to the most recent track automatically.

(Image not available offline) (Image not available offline) (Image not available offline)

You can easily pick the color and thickness of your GPX line. To do that, please go to Configure map > GPX track > Appearance. You can add as many tracks as you need to the map by checking them in Configure map > 'GPX track' menu.

(Image not available offline) (Image not available offline)

To get the plugin, just go to Maps & Resources - Plugins - Trip recording. Then tap the checkbox next to it. That's it. Just tap the widget on the map screen to start recording, set the recording interval and start your trip. When done, just tap the widget again. You can also start a new segment or view track info in the same menu.

(Image not available offline)

Trip Logging: Some Basics on Parameters and Filtering

(Hardy, 2016-11-07)

(A) Trip logging time interval:

Purpose: This basic parameter defines how often (after what time period since the last attempt) you try to record a point at all (often called "sampling rate)". This has decisive impact on the file size of a recording.

Side effects:

  • Longer time intervals will record fewer points, hence you record less detail. With very long intervals your recordimg may cut curves or bends (in the spatial dimension), and may not reflect all your speed changes, or may not cover periods at rest well. Due to the curve-cutting, very long time intervals may make the apparent recorded track length shorter than your actual trip in the real world.
  • Very short time intervals, on the other hand, will record many points closer together. While this improves statistics for any post-processing, viewing the as-recorded files may exhibit spatial noise like points recorded close together showing a noise motion which was not actually present in the real world. As a result, your apparent track length may exceed your actual real-world trip length.

Recommendation: Use 1-5 seconds for very high or high detail recordings (which may require filtering or post-processing). For backcountry hiking trips a setting like 30 seconds may suffice (for >=30 seconds we actually turn off GPS between recordings, which noticeably saves battery power!). To just capture the basics of where you were on a long driving trip, something like 5 minutes may suffice.

TODO: For tracks recorded with an interval >=30sec we turn off GPS between measurements to noticeably save power. In this mode, for each recorded point we re-activate GPS again and then use the very first GPS fix found, which creates slightly noisier tracks. We may think about e.g. waiting 3 sec each, evaluating 3 consecutve fixes, and then use the best one to log the point, this may reduce noise significantly.

(B) Filter: Trip logging minimum displacement (from the last recorded point):

Purpose: This filter avoids duplicate points being recorded where too little actual motion may have occurred, makes a nicer spatial appearance of tracks not post-processed later.

Side effects: Periods at rest are not recorded at all or by just one point each. Small (real world) movements (e.g. sideways, to mark a possile turnoff on your trip) may be filtered out. Your file contains less information for post-processing, and has worse stats by filtering out obviously redundant points at recording time, while potentially keeping artifacts caused by bad reception or GPS chipset effects.

Recommendation: A setting of 5 meters may work well for you if you do not require to capture details finer than that, and do not want to explicitly capture data while at rest.

(C) Filter: Trip logging minimum speed:

Purpose: This is a low-speed cut-off filter to not record points below a certain speed. This may make recorded tracks look "smoother" when viewed on the map.

Side effect: Your track will be missing all sections where the minimum speed criterion was not met (e.g. where you push your bike up a steep hill). Also, there will be no information about periods at rest, like breaks. This has effects on any analysis or post-processing, like when trying to determine the total length of your trip, time in motion, or your average speed.

Recommendation: Try using the motion detection via the "logging minumum displacement" filter (B) first, it may produce better results, and you will lose less data. If your tracks remain noisy at low speeds, try non-zero values here. Please note that some measurements may not report any speed value at all (some network-based methods), in which case you would not record anything.

Remark: "speed > 0" check: Most GPS chipsets report a speed value only if the algorithm determines you are in motion, and none if you are not. Hence using the "> 0" setting in this filter in a sense uses the motion detection of the GPS chipset. But even if not filtered here at recording time, we still use this feature in our GPX analysis to determine the "Distance corrected", i.e. the value displayed in that field is the "distance recorded while in motion".

(D) Filter: Trip logging minimum accuracy:

Purpose: This will record only points measured with a minimum "accuracy" indication (in meters/feet, as reported by Android for your chipset). Accuracy refers to the scatter of repeated measurements, and is not directly related to precision, which defines how close your measurements are to your "true" position.

Side effect: As a result of filtering by accuracy, points may be entirely missing for e.g. below bridges, under trees, between high buildings, or with certain weather conditions.

Recommendation: It is hard to predict what will be recorded and what not, it may be best to turn this filter off.

Remark: If GPS had been off immediately before a recording, the first point measured may have a decreased accuracy, so in our code we may want to wait a second or so before recording a point (or record the best of 3 consecutive points, etc.), but this is not yet implemented.

How to view GPX tracks


You can view your GPX tracks in OsmAnd or in other software. Also, the track itself can be created by you or imported from an external source. For instance, from, your local hiking forum or any other place.

The simplest way to view a track you've downloaded is to tap on it in your device's file manager and choose to open it in OsmAnd. After that, you'll see the track in My places - My tracks or in the Dashboard - My tracks. To view it the next time, just enter 'My tracks' tap 'Show on map' on those you'd like to see.

To view it in Google Earth, go to File > Open > file type GPS (*.gpx, . . .) Navigate to your track and open.

View OsmAnd GPX tracks in Garmin software

Because OsmAnd GPX format differs from the Garmin one, you will need to convert your OsmAnd track into the Garmin format.

Download and install GPSBabel from

To be safe, make a copy of the GPX file to work with.

Open GPSBabel and use the following settings:

  • Input format: "GPX XML"
  • Source file: Copied file as discussed above
  • Output format: "Garmin MapSource - gdb"
  • Output file same name as input file (i.e. overwrite source - Answer Yes when prompted to over-write)
  • Run GPSBabel ("Apply" button). If the translation has worked the log screen will say "Translation successful"

Open the converted file in Garmin software (!MapSource, !BaseCamp) in your usual way.

View (and edit/convert) OsmAnd GPX tracks in RouteConverter

Download RouteConverter from

RouteConverter can edit and convert GPX tracks and tracks from many other formats. It can be used to create a route and save that as a GPX track, as well.

You can also save your every navigation trip as a GPX track automatically. To do that, go to Plugins - Trip recording - Settings and choose 'Auto-record track during navigation'. After you do that, your every navigation trip will be saved as a GPX track in the tracks folder.

Take OsmAnd Trip recording plugin with you on your trip to make an informative track.

CAUTION Recording a track impacts the battery life: even if the screen is off, it continues to run. Check it using the notification that OsmAnd is running in the background in your status bar.

Increasing battery life

Hint: Before putting the device to sleep mode on a long hike, press the home button so the OsmAnd app goes to the background. If OsmAnd remains in the foreground and the device is often turned on even briefly (maybe even accidentally, like by shifting in your pocket or backpack), then GPS would be activated each time with very noticeable impact on your battery life. In remote areas with bad or no cell reception, you can also set the device to "Flight mode" (but with GPS on) to save the battery by preventing the cell phone using high transmission power to look for transmission towers. You can get good 20 hours of recording GPX tracks on hikes with the above parameters.

Online tracking


You can set up your phone to track its location. To do that, go to Plugins - Trip recording and tap Settings, then choose Online Tracking. To make it possible, you also have to provide a valid link.

Make a Google Spreadsheet and name it. Then go to Tools - Scrip Editor - Create script for - Blank project. In your spreadsheet, copy the key from the URL field. It is a set of numbers like this:

Go back to the script.

Delete everything. Insert this code:

This is some text! function doGet(e) { var app = UiApp.createApplication(); var sp = SpreadsheetApp.openById("0Ana......"); sp.insertRowBefore(1); if(e) { var d = new Date( Date( e.parameter.timestamp)); sp.getRange( "A1").setValue( parseFloat(; sp.getRange( "B1").setValue( parseFloat( e.parameter.lon)); sp.getRange( "F1").setValue( Math.round(( parseFloat( e.parameter.speed / 1000 * 60 *60))) + " km/h"); sp.getRange( "D1").setValue( parseFloat( e.parameter.altitude)); sp.getRange( "E1").setValue( parseFloat( e.parameter.hdop)); sp.getRange( "C1").setValue( d); } return app; }

Paste your Spreadsheet key instead of 0Ana......

Save and go to Publish - Deploy as web app - set access as Anyone, even anonymous.

Now your movements will be exported to that spreadsheet as coordinates. You'll find speed information in the document. You can also set tracking interval.

Setup own server: because Google deprecates lots of stuff, please think of own server machmit/mylieu/browser/Server or end to end solution like

Save navigation routes as GPX tracks


You can save your navigation route as a GPX track. It will be done automatically every time you use navigation. Just go to Plugins - Trip recording - Settings. Choose 'Auto-record track during navigation'. You'll see your tracks in 'My tracks' section and in your osmand/tracks folder.

(Image not available offline) (Image not available offline)