This information is historic and only relevant to X-Plane 8 and earlier


This document describes the file format and codes used in X-Plane’s apt.dat file, 715 version.

  • This data file format is usable with X-Plane version 7.15 – 8.06.  It was superseded by airport file format 810 in March 2005.

  • This is the “official” definition of the X-Plane file formats.  The apt.dat file defines all airport data in X-Plane, including runways, taxiways, and other airport features.

  • Navigation aids at an airport (such as ILS components) are not defined in this file, but are contained in the nav.dat file.

File structure

The file structure is similar to all other X-Plane data files, with the exception that the sequencing of the data within the apt.dat file is important.  Runway, taxiway, location and ATC data for an airport must immediately follow the header data for the parent airport.

  • The first line of each file indicates if the file was generated on a PC (“I” for Intel or IBM) or Macintosh (“A” for Apple). X-Plane uses this code to help deal with the different ways in which PCs and Macs manipulate carriage returns in text files, and big-endian/little-endian issues. The second line contains a version number used by X-Plane.  This usually implies the first version of X-Plane that can utilise the file format (eg. “715 version” implies that this file format was first available for use in X-Plane version 7.15).   The version number is followed by my own long copyright message that also includes the sequential build number of the data and my own internal code for the metadata that drives the formatting). This copyright message is very long, and includes a reference to the GNU General Public Licence under which this data is published as modifiable freeware, and also an acknowledgement and a disclaimer for the US Department of Defense NIMA for the DAFIF data. The terms of this license require that this copyright message must be left intact if this file is modified and/or redistributed.
  • The very last line of each file is marked by a “99”.

Here is an example of the two header lines, one airport, one runway and the file termination line:

715 Version – DAFIF data cycle 200502, build 1871, metadata AptXP715, Copyright © 2004, Robin A. Peel ( This data is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program (“AptNavGNULicence.txt”); if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. This product was developed using DAFIF (the Defense Aeronautical Flight Information File), a product of the US National Imagery and Mapping Agency (NIMA). NIMA requires the following warranty statements: (A) Under 10 U.S.C. 456, no civil action may be brought against the United States on the basis of the content of a navigational aid prepared or disseminated by either the former Defense Mapping Agency (DMA) or the National Imagery and Mapping Agency (NIMA). (B) The DAFIF product is provided “as is,” and no warranty, express or implied, including, but not limited to the implied warranties of merchantability and fitness for particular purpose or arising by statute or otherwise in law or from a course of dealing or usage in trade, is made by NIMA as to the accuracy and functioning of the product. (C): Neither NIMA nor its personnel will be liable for any claims, losses, or damages arising from or connected with the use of this product. The user agrees to hold harmless the United States National Imagery and Mapping Agency. The user’s sole and exclusive remedy is to stop using the DAFIF product.

1 1242 0 0 89TX Aero-Bee Ranch Airstrip
10 30.879343 -098.416976 17x 170.00 2800 0.0000 0.0000 50 111111 04 0 0 0.25 0


Each airport has a header line and one or more runway/taxiway lines,  followed by lines for an airport tower viewpoint location, a startup location on the airport , airport light beacon location and windsocks, and airport ATC (Air Traffic Control) frequencies.

codes used in apt.dat (715 version)
Code (apt.dat)Used for
1Airport header data.
16Seaplane base header data. No
airport buildings or boundary fences will be rendered in X-Plane.
17Heliport header data.  No
airport buildings or boundary fences will be rendered in X-Plane.
10Runway or taxiway at an airport.
14Tower view location.
15Ramp startup position(s)
18Airport light beacons (usually
“rotating beacons” in the USA).  Different colours may be
19Airport windsocks.
50 to 56Airport ATC (Air Traffic Control)

Note the following sequence of the airport data:

  • The runway data for each airport must follow the airport header line.
  • Taxiways should follow the runways.
  • Tower viewpoints and startup locations.
  • Airport light beacons and windsocks.
  • ATC frequencies should be the final entries for an airport.
  • A blank line can be used to separate different airports – this helps improve readability, but it is not mandatory.

Changes from previous file versions

  • The previous file version for apt.dat was 703 version.
  • A flag now controls if a control tower object will be drawn in X-Plane at the location of the control tower (line code 14).

Other issues

The limitations on the number of airports within a region (an X-Plane “region” is a dynamic area of 2 degrees latitude by 3 degrees longitude) changed for X-Plane 7.40.  So more recent files generated in this file format (715) are only usable in X-Plane versions 7.40 – 8.06.

Example data

Here is a simplified fragment for part of an airport in apt.dat:


1 5355 1 0 KABQ Albuquerque Intl Sunport
10 35.044209 -106.598557 08x  90.44 13749 1000.0000 0.1000 150 252231 02 0 3 0.25 1
10 35.031995 -106.618838 03x  44.66 9993     0.0000 0.0000 150 352321 02 0 3 0.35 1
10 35.044021 -106.611984 17x 183.36 10014  890.0000 0.0000 150 231231 01 0 2 0.25 1
10 35.038364 -106.612950 12x 128.98 5992     0.0000 0.0000 150 121331 02 0 2 0.25 1
10 35.042778 -106.598572 xxx  90.44 13737    0.0000 0.0000 100 161161 02 0 0 0.25 0
10 35.045609 -106.595635 xxx  90.44 11220    0.0000 0.0000 110 161161 02 0 0 0.45
14 35.047215 -106.608162 100.00 1 Tower viewpoint
15 35.047005 -106.618576   0.000 Gate B1 (American Airlines)
15 35.047005 -106.615000   0.000 Gate A1 (United Airlines)
18 35.045031 -106.598549 1 Light beacon
19 35.045176 -106.621581 1 Windsock
19 35.043241 -106.575534 1 Windsock
53 12190 GND
54 11830 TWR

This shows one airport header line, four runways, two taxiways, a tower viewpoint, two gate starting locations, an airport beacon, two windsocks and two ATC frequencies.  The meaning of the data in the above example data is:

of example airport data (apt.dat)
1Identifies this as an airport header line.  Note
that a code 16 will identify this as a seaplane/floatplane
base, and a code
will identify it as a heliport.
5355Airport elevation (in feet above
1Airport has a control tower (1=yes, 0=no).
Used by X-Plane’s ATC system.  Not used to draw the
default ATC tower building (despite what is stated in WorldMaker!).
0Display X-Plane’s default airport buildings (1=yes, 0=no).
This is usually ‘no’ if any custom taxiways have been defined.
KABQIdentifying  code for the airport (the ICAO code, if one exists).
It is helpful if these are unique, but this may not be possible in all cases.
Albuquerque Intl SunportAirport name.
Usually, the city name is first followed by the airport name (eg.
“London Heathrow”).
Runways and taxiwaysExample Usage
10Identifies this as a data line for a runway or taxiway segment.
35.044209Latitude (in decimal degrees) of runway or taxiway segment center.
-106.598557Longitude (in
decimal degrees) of runway or taxiway segment center.
08xRunway number (eg “25x” or “24R”).  If there is no runway suffix (eg. “L”, “R”, “C”
or “S”), then an
“x” is used.  “xxx” identifies the entry as a taxiway.
Helipads at the same airport are numbered sequentially as
“H1x”, H2x”.
90.439True (not magnetic) heading of the runway in degrees.
Must be between 0.00 and 360.00.
13749Runway or taxiway segment length in feet.
1000.0000Length of displaced threshold (1,000 feet) for runway 08 and for the reciprocal runway 26 (0 feet).  The length of the reciprocal runway’s displaced threshold is expressed as the fractional part of this number.  Take the runway 26 displaced threshold length  (in feet) and divide it by 10,000, then add it to the displaced threshold length for runway 08.  For example, for displaced threshold lengths of 543 feet and 1234 feet, the code would be 543.1234.

Note that the displaced threshold length is included in the overall runway length but that the stopway length is excluded from the overall runway length.  This code should be 0.0000 for taxiway segments.  FYI, the displaced threshold is usually marked (in the real world) with long white arrows pointing toward the threshold.  The displaced threshold is not available for use by aeroplanes landing, but may be used for take-off (in practice, if you use these last few feet of the runway for take-off, you are probably in serious trouble!).

0.1000Length of stopway/blastpad/over-run at the approach end of runway 08 (0 feet) and for runway 26 (1,000 feet), using the same coding structure defined
above.  FYI, in the real world the stopway/blastpad/over-run is usually marked with large yellow chevrons, and aeroplane movements are not permitted.
150Runway or taxiway segment width in feet.
252231Runway or taxiway segment lighting codes.

  • The first three digits (“252”) define the lighting for the runway as seen when approached from the direction implied by the runway number (08 in our example).
  • The final three (“231”) define the lighting for the runway as seen when approached from the opposite end (26 in our example).

In order, these codes represent:

02Runway or taxiway surface
for the runway or taxiway segment.  The leading zero is
optional – but I always use it to keep all the columns neatly lined up.
0Runway shoulder
.  These are only available in file version
701 and later.  Here, code 0 implies that there is no runway
3Runway markings
(the white painted markings on the surface of the runway.  Here,
code 3 implies precision runway markings (ie. there is an associated
precision approach for the runway, either an ILS or MLS).
smoothness.  Used to cause bumps when taxying or rolling along the
runway in X-Plane.  It is on a scale of 0.0 to 1.0, with 0.0 being
very smooth, and 1.0 being very, very rough.  X-Plane determines a
baseline smoothness based upon the runway surface type, and then uses
this factor to determine the ‘quality’ of the runway surface.  The
default value is 0.25.
1Runway has ‘distance
remaining’ signs (0=no signs, 1=show signs).  These are the white
letters on a black background on little illuminated signs along a
runway, indicating the number of thousands of feet of usable runway that
remain.  They are inappropriate at small airports or on most dirt,
gravel or grass runways.
Startup locationsExample
15Identifies this as a
data line for an airport startup
location (code 15).  Multiple startup locations
are allowed as separate data lines.
(in decimal degrees) of the viewpoint or startup location.
-106.618576Longitude (in
decimal degrees) of the viewpoint or startup location.
0.00Elevation of the viewpoint, or the heading of the aeroplane when placed at the
startup location.
Gate B1 (American
Name of
a startup location (used in X-Plane 7.10 and later).
14Identifies this as a data line for a tower viewpoint (code 14).Only a single tower viewpoint is permitted.
(in decimal degrees) of the viewpoint.
-106.608162Longitude (in
decimal degrees) of the viewpoint.
100Height (in feet)
above ground level of viewpoint.
1Flag to indicate if
a control tower object should be drawn at this location in
X-Plane.  0=no tower, 1=draw tower.
Tower viewpointName of this
Airport light beaconsExample Usage
18Identifies this as a
data line for an airport light beacon (code 18).  Note that if custom data is not defined, then appropriate data will be
generated automatically and included in apt.dat.  The light beacon
types available (see list below) are in accordance with the US AM
(Aeronautical Information Manual) – other types may be added to cater
for other light beacons used in other countries.
35.045031Latitude (in decimal degrees) of the light beacon.
-106.598549Longitude (in
decimal degrees) of the light beacon.
1Identifies the
colours of the light beacon.  Here code 1 implies a standard
white-green flashing light.  Options are:

  • Code 1: white-green flashing light (land airport).
  • Code 2: white-yellow flashing light (seaplane base).
  • Code 3: green-yellow-white flashing light (heliports).
  • Code 4: white-white-green flashing light (military field).
  • Code 5: white strobe light.
  • Code 0: no beacon (can be used at ‘closed’ airports).  I
    suggest you use a dummy lat/lon based upon one of the airport’s
Light beaconName for this light beacon
(not used by X-Plane).
19Identifies this row
as an airport windsock (code 19). Note that:

  • If custom data is not defined, then appropriate data will be generated
    automatically by may data export algorithms and included in apt.dat
    alongside the threshold of each runway.
  • If at least one windsock is explicitly defined at an airport, then
    no ‘automatic’ windsocks will be generated at that airport.
  • Multiple windsocks are
  • If you do not want any windsocks at an airport, then let
    me know in an e-mail
    and I will suppress the generation of all
    automatic windsocks at that airport.
(in decimal degrees) of the airport windsock.
-106.621581Longitude (in
decimal degrees) of the airport windsock.
1Windsock lighting
(1=illuminated, 0=not illuminated).
WindsockName for this
windsock (not used by X-Plane).
53Identifies this as an
airport ATC
frequency line.  Codes in the 50 – 59 range are
used to identity different ATC types
12190Airport ATC frequency, in Megahertz
multiplied by 100 (ie. 121.90 MHz in this example).
GNDName of the ATC frequency.
This is often an abbreviation (such as GND for

Codes used to define data

The codes used to define the data are:

Codes used in
apt.dat (715 version)
frequency codes
Meaning of
50AWOS (Automatic Weather
Observation System), ASOS (Automatic Surface Observation System) or ATIS
(Automated Terminal Information System).
51Unicom or CTAF (USA), radio (UK)
– open channel for pilot position reporting at uncontrolled airports.
52Clearance delivery.
surface codes
Meaning of
06Asphalt helipad (big “H” in
the middle).
07Concrete helipad (big “H” in
the middle).
08Turf helipad (big “H” in the
09Dirt helipad (big “H” in the
10Asphalt taxiway with yellow hold
line across long axis (not available from WorldMaker).
11Concrete taxiway with yellow
hold line across long axis (not available from WorldMaker).
12Dry lakebed runway (eg. at KEDW
Edwards AFB).
13Water runways (marked with
bobbing buoys) for seaplane/floatplane bases (available in X-Plane 7.0
and later).
approach path indicator codes
Meaning of
1No visual approach path lighting.
2VASI (Visual Approach Slope Indicator).
3PAPI (Precision Approach Path Indicator).
4Space Shuttle Landing PAPI (steep 20 degree glide path) – its use is very rare!
Runway lighting

Meaning of code

that for values 1-5, the codes are cumulative – ie. code 3 also assumes code 1
and code 2
when X-Plane interprets
the data

1No runway lighting.
2Runway edge lights
3Also has REIL (Runway End Identification Lights – the flashing strobes at
the approach end of the runway.
4Also has CLL (Center Line Lighting).
5Also has TDZ (Touch Down Zone) lighting.
6Only has blue taxiway edge lights (use on
lighting codes
Meaning of
1No approach lights.
2SSALS (Simplified short approach light system).
3SALSF (Short approach light system with sequenced flashing
4ALSF-I (Approach light system with sequenced flashing lights).
5ALSF-II (Approach light system with sequenced flashing lights and red side bar
lights the last 1000’).
6ODALS (Omni-directional approach light system).
7Calvert (a British design) category 1.
8Calvert (a British design) categories 2 and 3.
shoulder codes
Meaning of
0No runway shoulder.
1Asphalt runway shoulder.
2Concrete runway shoulder.
marking codes
Meaning of
0No runway markings. Also used for helipads (X-Plane will automatically draw the
big “H” based on the runway surface code), taxiways and water
runways. The runway markings available (see list below) are in accordance with
the US AIM (Aeronautical Information Manual) – other types may be added to cater
for different types of runway markings that may be used in other countries.
1Visual markings.
2Non-precision approach markings
3Precision approach markings.

© Robin Peel,
2005.  Last updated March 29, 2005