TEXT FORMAT

SDF

Structure-Data File (SDF)

SDF (structure-data file, also written SDfile or .sd/.sdf) is a plain-text chemical file format for storing one or many molecular records together with arbitrary associated data. It was developed by Molecular Design Limited (MDL Information Systems) as part of its CTfile (connection-table file) family, and the specification is now maintained by BIOVIA, a Dassault Systemes subsidiary, following MDL's passage through Symyx and Accelrys. SDF is the de facto interchange format for small-molecule datasets and is the download format for structure collections in repositories such as PubChem and commercial screening libraries.

Structurally, an SDF file is a concatenation of records, each separated by a line containing exactly four dollar signs ($$$$). Every record begins as an ordinary MDL molfile: a short header, then a connection table (Ctab) built from an atom block (element, 2D or 3D coordinates) and a bond block (which atoms are connected and by what bond order), terminated by an M END line. This Ctab is an explicit edge-list graph of the molecule, which is why SDF interoperates naturally with the related single-molecule Molfile and with line notations such as SMILES, InChI and MOL2. Because the underlying molfile comes in two dialects, SDF exists as V2000 and V3000 variants; V2000 caps a molecule at 999 atoms and 999 bonds and lacks native R-group support, while V3000 removes those limits and adds enhanced stereochemistry, R-groups and reactions.

What distinguishes SDF from a bare molfile is the tagged data section appended after M END. Each data item is introduced by a header line beginning with > and naming the field in angle brackets (for example > <Melting_Point>), followed by one or more value lines and a blank-line terminator. This lets each structure carry named properties, identifiers and metadata (activity values, CAS numbers, computed descriptors) alongside the graph, making SDF a self-contained structure-plus-annotation table rather than a pure geometry format.

SDF's strengths are ubiquity, human readability, faithful round-tripping of connectivity and coordinates, and the ability to bundle heterogeneous per-record metadata. Its limitations are real: it is verbose and space-inefficient for large libraries; the fixed-column V2000 layout is fragile and the nominal line-length limit is often violated in practice; stereochemistry and charge conventions are historically ambiguous; and V2000/V3000 incompatibilities can break older tools. Reading, writing and converting SDF is well supported by cheminformatics toolkits such as RDKit and Open Babel.

Alternative Names: SDfile, .sd, .sdf

Tools(Read & Write)

Write-only Tools

Frequently Asked Questions

What is a Structure-Data File (SDF) file?

A Structure-Data File (SDF) file stores a graph — its nodes, edges and attributes — in the Structure-Data File (SDF) format (also: SDfile, .sd, .sdf). See the feature table above for what it supports.

How do I open a Structure-Data File (SDF) file?

Open it in a graph tool that supports Structure-Data File (SDF), or convert it to a format your tool reads. With GraphInOut you can convert Structure-Data File (SDF) to GraphML, DOT, Connected JSON and more, right in your browser.

How do I convert a Structure-Data File (SDF) file to another format?

Use the Convert from Structure-Data File (SDF) link above: upload or paste your Structure-Data File (SDF) file (input preset to Structure-Data File (SDF)), choose a target format and download the result — free, no install.