NASA Logo, National Aeronautics and Space Administration

What is Common Data Format (CDF)?

  • Self-describing data format for the storage of scalar and multidimensional data in a platform- and discipline-independent way
  • Scientific data management package (CDF Library) allows application developers to manage these data arrays
  • Transparent access to data and meta-data through Application Programming Interfaces (APIs)
  • Built-in support for data compression (gZip, RLE, Huffman) and automatic data uncompression, and checksum
  • Large file support (> 2G-bytes)
  • CDF library includes a suite of tools that allow users to manipulate CDF files
  • Provide read/write interfaces for C, FORTRAN, Java, Perl, C#/Visual Basic, IDL, MATLAB (and user-supplied software, e.g., Python, Sybase, mySQL)
  • More Frequently-Asked Questions (FAQ)

[Download the latest released version (V3.6.3.1)]

Please email with any CDF-related questions (both technical and policy-related).

An external CDF visualization tool: Autoplot interactive browser


  • 1/12/2017CDF logo: CDF version V3.6.3.1 is released. This release, with a minor change to the earlier release of V3.6.3.0, includes a new leap second added for 1/1/2017. Please read the change note that describes the changes made in this release, as well as all previous releases.

    We have received questions about users getting warnings of incorrect CDF_TIME_TT2000 times in CDFs written with an out-dated leap second table. Previous CDF versions, till, leave the CDF header for the leap-second-last-updated field to the value inserted when the CDF was created. It turns out that this is a problem when adding additional data or when copying an empty (master) CDF for filling with data, since the resulting CDF carries the initial, out-dated leap-second-last-updated header and will cause warnings when opening the CDF by the newer CDF version with a newly added leap second. We have addressed this issue in this version, which will automatically update this header to the newest leap second date, if there is a new leap second added, when writing/updating TT2000 data to the CDFs.

    You can check the leap-second-last-updated header in your master file by running cdfdump tool command and searching for LeapSecondLastUpdated field:

    cdfdump -dump metadata <CDF master>

    In case you need to update this header to the latest leap second date, cdfconvert tool command can do that:

    cdfconvert <old master> <new master> -leapsecondlastupdated 20170101

    Make sure to use the tools (either from the pre-built package or compiled from the source) and the leap second table from the latest released CDF.

    For the TT2000 data type for time, read our requirements analysis and development approach for more details.

  • CDF logoThe latest leap second table can be found here.
  • IDL: Patch based on the latest CDF V3.6.3.1 version IDL Patch.
  • MATLAB: CDF distributed modules based on the latest CDF V3.6.3.1 version MATLAB Patch
  • C#/Visual Basic C#/VB-CDF on Windows based on the latest CDF V3.6.3.1.
  • A suite of user-provided software can interact with CDF. Please check them out here.
  • CDFsupport email address was changed to
  • CDF's Java Network Launching Protocol latest development