← Guides

Color management · ICC

What is VCGT?
Calibration curves in ICC profiles.

VCGT is where an ICC display profile stores red, green, and blue calibration curves. Here is what it holds, how it differs from the profile’s tone response, and how to check it.

Updated November 7, 2026

VCGT (video card gamma table) is an optional tag in an ICC display profile, with the signature vcgt, that stores one calibration curve each for red, green, and blue. Calibration software writes these curves so the computer can adjust each channel of the video signal before it reaches the display. The rest of the profile then describes how the display behaves with that adjustment in place.

VCGT is not part of the core ICC specification. It is a private tag that Apple introduced and that calibration tools on macOS and Windows widely use.

How is VCGT different from the TRC?

An ICC display profile usually has two kinds of curves, and they do different jobs:

Tone response curve (TRC) and calibration curves (VCGT)
TRC (rTRC, gTRC, bTRC)VCGT (vcgt)
PurposeDescribes the display’s tone response for color managementChanges the signal sent to the display
Used byColor-managed applications converting colorsThe system’s per-display gamma table
Required?Yes, for a matrix/TRC display profileNo, it is optional
ShapeGamma value, parametric curve, or sampled tablePer-channel table or a simple formula

In short, the TRC says “this is how the display responds”, while VCGT says “adjust each channel like this first”. A profile can have a TRC without any VCGT; many do.

What can a VCGT tag hold?

The tag stores either a table or a formula:

Either way, VCGT holds three independent 1D curves. It cannot store a full 3D color transform, so it can correct per-channel tone and white balance but not cross-channel color errors. That is why a 3D calibration LUT can only become VCGT when its red, green, and blue outputs behave independently.

Stored curves are not active curves

On macOS, a display profile’s VCGT curves are normally loaded into that display’s gamma table when the profile is in use. But the gamma table can change afterwards: another application, a calibration tool, or a display reconfiguration can replace it. So keep three states apart:

  1. Profile contents: the curves stored in the .icc file.
  2. Assigned profile: the profile macOS currently uses for the display.
  3. Active curves: what is in the display’s gamma table right now.

Reading a profile file tells you only the first. None of the three measures what the display actually shows; that takes a meter and calibration software.

How do you check a profile’s VCGT?

A flat diagonal VCGT, where output equals input, means the curves change nothing. Curves that bend or end below the top usually lower contrast or adjust white balance on purpose.

Can you add VCGT to a profile?

In PatternSpace’s ICC tools, the Build tab can attach calibration curves from a supported .cube LUT. A 1D LUT supplies the channel curves directly; a 3D LUT is accepted only when its channels are independent within tolerance. PatternSpace checks range, endpoints, monotonicity, and separability, then resamples the curves to 256 entries by default. Building and inspecting profiles is free; exporting a generated profile requires Pro.

Have the calibration LUT in another format? Convert it to Cube with the free online LUT converter.

Next steps

See the ICC profile tools guide for building, comparing, verifying, and assigning profiles on Mac, or learn how to inspect an ICC profile on Mac.