Convert Bruker OPUS files to JCAMP-DX (Beta)

Turn OPUS files into standard JCAMP-DX (.jdx) for spectral libraries and other software.

Opens: OPUS (.0, .1 …), SPA, SPG, SPC, WDF, SP, JWS
Saves: CSV, XLSX, JCAMP-DX

Convert

Spectrum files
Choose files… or drop them here
up to 200 MB each, 200 files max
    Add more files

    Bruker OPUS (.0, .1, .2 …), Thermo OMNIC (.spa, .spg), GRAMS/Galactic (.spc), Renishaw WiRE (.wdf), PerkinElmer (.sp) or JASCO (.jws). Several files or a .zip can be combined into one table.

    Options

    OPUS files usually hold several blocks (absorbance, sample and background single channel, interferograms). Groups and maps always export every spectrum.

    Pick the comma version if your Excel uses a decimal comma (most of Europe).

    More options

    Columns: one x column and one column per spectrum. Rows: one spectrum per row (best for maps and chemometrics). Auto uses rows above 100 spectra.

    Convert between wavenumber and wavelength (not possible for Raman shift or time axes).

    Convert transmittance to absorbance (A = −log₁₀T) or back. Other spectrum types are left unchanged.

    Your files are deleted after processing.

    JCAMP-DX (.jdx, .dx) is the plain-text exchange format that spectral libraries, spectrum databases and most spectroscopy programs import. This page turns a Bruker OPUS file into a JCAMP-DX 5.01 file without OPUS, for example to add your spectra to a library, share them with a group that uses different software, or attach them to a publication.

    How to convert OPUS to JCAMP-DX

    1. Upload the OPUS file (.0, .1 …). Several files or a ZIP work too.
    2. Choose the content under Which spectrum. Best available writes the result spectrum (usually absorbance). All data blocks writes every block of the file, including single channels and interferograms, into one linked JCAMP-DX file.
    3. Optionally convert the axes under More options, for example transmittance to absorbance or wavenumber to wavelength, before the file is written.
    4. Download the .jdx.

    What the file looks like

    • Header: the required labels (title, JCAMP-DX version, data type, units, first and last x, number of points) and the date as ##LONGDATE. The instrument goes into ##SPECTROMETER/DATA SYSTEM and the resolution into ##RESOLUTION. Other OPUS parameters, such as beamsplitter, detector, scans or apodization, become ##$ user labels.
    • Data: evenly spaced spectra use the uncompressed ##XYDATA=(X++(Y..Y)) form with a scaling factor that keeps nine to ten significant digits; unevenly spaced data use ##XYPOINTS. Numbers are written in plain form, not compressed with DIF/DUP characters, so simple parsers can read them.
    • Data type: infrared spectra, Raman spectra and interferograms are labelled as such.
    • Several blocks or spectra become one file of ##DATA TYPE=LINK with a child block per spectrum.
    • Transmittance in % is written as a fraction between 0 and 1 with ##YUNITS=TRANSMITTANCE, the convention JCAMP-DX uses, and a comment notes the change.
    • The file is plain ASCII; accented characters in sample names are replaced by their base letters.

    How it was checked

    Output files were read back with an independent JCAMP-DX reader: point counts matched and values came back within about 1 part in 10 million, for every block type tested. The OPUS reading itself was compared with OPUS's own exports.

    When to pick something else

    JCAMP-DX suits libraries and spectroscopy software. For Excel, Origin or Python a CSV is simpler: see OPUS to CSV. To look at a file before converting, see opening an OPUS file.

    More about what this tool reads and writes: Spectrum File Converter (OPUS, OMNIC, SPC, WDF, SP, JWS).