Convert GRAMS / Galactic .spc files to CSV (Beta)

Read single and multi-spectrum .spc files from FTIR, UV-Vis, NIR and Raman instruments and export CSV or Excel.

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.

    The .spc format comes from Galactic's GRAMS software, and many programs still write it: FTIR, UV-Vis, NIR and Raman software from PerkinElmer, Thermo Nicolet, HORIBA, Ocean Optics, Andor, Kaiser, WITec and others, and Bruker OPUS as an export. This page writes the spectra from any of these .spc variants as CSV, without GRAMS.

    How to convert SPC to CSV

    1. Upload one .spc, a selection of them, or a zipped folder.
    2. Choose the number format: decimal points, or decimal commas for European Excel settings.
    3. Download the CSV. Its header carries the axis names and units stored in the file, such as Wavelength (nm) or Raman shift (cm-1).

    Single and multi-spectrum files

    An .spc can hold one spectrum or many, and the CSV follows the structure:

    • Single spectrum: an x column and a y column.
    • Multifile with a shared x axis (a kinetic run, a temperature series): one column per spectrum, headed with its z value from the file, for example Time (min) = 0.5.
    • XYXY files, where every spectrum has its own x values (GC-MS scans, for instance): the spectra keep their own x columns instead of being forced onto one axis.
    • Maps and long series on a shared axis switch to rows once they pass 100 spectra: each row is one spectrum, labelled with its z value, which keeps the table within spreadsheet limits. More options lets you choose the layout yourself.

    Versions and variants

    Both the current format and the older LabCalc-era layout are read, with integer (16- and 32-bit) or floating-point data, evenly or unevenly spaced x, and the optional log block. Twenty-six real files from different instruments were checked against two independent open-source SPC readers and against text exports.

    Where those readers disagree, this converter follows the format specification. In some multi-spectrum files, for example, each spectrum has its own scaling exponent, which can be negative; readers that ignore this report some spectra two to four times too large.

    Not an SPC file after all?

    Shimadzu's UVProbe and LabSolutions software also use the .spc extension for a different, unrelated format. The converter spots them and says so instead of guessing; export them as text or JCAMP-DX from the Shimadzu software instead.

    Other outputs

    You also get an Excel workbook with a chart and metadata, and a JCAMP-DX file. All supported formats are listed on the Spectrum File Converter page.

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