Not all CxF is created equal:
it comes in several flavors

When talking about brand colors, and brand color reproduction, many people are looking at CxF as the way to go. It is also one of the directions Project BBCG shows for sharing brand color specifications. But what is that CxF, the Color eXchange Format? Let’s take a deeper look! E.g., at the different flavors of CxF…

CONTENTS: Background and history | ISO 17972 | Why CxF over Lab? | The finest detail… | CxF/X-4: three varieties | Creating a CxF/X file | CxF and PDF | CxF and Adobe CC applications | Why is this important? 

Let’s start with a bit of background and history. CxF is based on XML, the eXtensible Markup Language. XML is a basic instruction set on how to create an XML-based language, like CxF. It’s family of HTML (the one used by websites), with one very important difference: XML, and therefore all languages based on XML, is very strict. The syntax has to be correct, or it is invalid. With HTML, that’s different: HTML readers (i.e., your browser) are very forgiving, they will correct errors in the code. That’s not the case with XML: to be correct XML or not to be at all, that’s the question.

The rules of what an XML file should look like are defined in the ‘XML Schema Definition’, the .xsd file. You could compare this .xsd file with a preflight profile that will check whether a PDF file is valid for a specific type of application.

CxF (Color eXchange Format) is a file format that was created in 2001 by GretagMacBeth, a company that merged with X-Rite in 2006. It had a predecessor called MIF, and it’s sometimes still in use. Over the years, there were several versions of CxF, the last version managed by X-Rite was CxF3. After that version, X-Rite handed the specification to ISO, the International Standards Organization. It is similar to what happened to PDF: that used to be a proprietary file format from Adobe, but when it reached a certain level of maturity, it handed it over to ISO.

ISO 17972: graphic technology – colour data exchange format
The ISO version of CxF, which is called CxF/X, is based on CxF3, but it also has some additional requirements for a valid CxF/X file. Plus: the ISO standard comes in multiple parts:

  • Part 1: Relationship to CxF3 (CxF/X)
  • Part 2: Scanner target data (CxF/X-2)
  • Part 3: Output target data (CxF/X-3)
  • Part 4: Spot colour characterisation data (CxF/X-4) 

Most of the time when people talk about CxF for brand color specification, it will be CxF/X-4.

And although there now is the ISO standard CxF/X, many people are still using CxF3, the version that predates the ISO standard.

If you want to read the ISO standards, you will need to buy a license. But there is some interesting free stuff on the ISO website, 

  • xsd: this is the CxF3 schema that will be used to check if a CxF file is valid (the ‘preflight profile’)
  • pdf: this file shows the relations of the different elements in a CxF file as a diagram
  • ISO17972-4_CxFX-4_Example_1.xml
  • ISO17972-4_CxFX-4_Example_2.xml
  • ISO17972-4_CxFX-4_schema.xsd: this is the schema with the extra information needed for a CxF/X-4 file to be valid.

The .xsd and .xml files can be opened with every basic text editor, plus: it’s human readable! Try it!

Why CxF over Lab?
An important point in defining brand colors is why one would prefer a CxF file over Lab values. Isn’t that Lab (CIELab) already a good description of a color?

Yes, Lab is a very decent description of a color, on the condition you mention the measurement settings: e.g., D50, 2°, M1. But you can even get a more detailed one: by describing the energy level in different parts of the spectrum. That is the most detailed description possible! And that’s why this is mandatory in a CxF/X4 file.

To make a comparison: if I told you I have 23,65 euro in my wallet, that’s a pretty decent description of the money I have on me. And for most uses, that would be enough, e.g., to know if I can pay for a small pizza to take out. But in some instances, you might want to know which bills and coins that 23,67 euro consist of. Is it 1x 20 euro, 1x 2 euro, 1x 1 euro and 1x 5 cents? Or is it 4x 5 euro, 7x 50 cents, 3x 5 cents? Both make 23,65 euro, but the composition is different. The same can happen with color: two different spectral compositions might end up with the same Lab value for a specific condition.

And in some cases, it might make a difference. If I need to buy a parking ticket and the ticket machine only accepts 1 and 2 euro coins, I can buy it with the first combination, but not the second.

The finest detail…
If you open the xsd file in a text editor, you can see what information can or should be embedded in a CxF file. To name a few:

  • Illuminant
  • GeometryChoice
  • Device
  • SubstrateType
  • FinishType:

To show the details of a few of those, here are the possibilities for SubstrateType and FinishType:

And CxF/X-4 even includes the printing process used.


CxF/X-4: three varieties
Where it becomes more complicated, is which data is included in the CxF/X-4 file: there are three varieties, with different degrees of complexity in describing the color. For all these varieties, you will need to print the spot color ink on the substrate for which you need the spot color definition.

  • CxF/X-4b: in this case, you only need to print a solid patch and only measure that 100% solid, but not the substrate.
  • CxF/X-4a: you need to have a minimum of 3 tints: a 100% solid, the 50%, and the substrate. But 11 tints (from 100% to 0%) are recommended.
  • CxF/X-4: you must also print that spot color ink on a black substrate, with a minimum of 3 tints (100%, 50%, and 0%). If you like, you can also go for 11 tints for the black substrate.

In real life, it seems that most people settle for the 3 tints on the white substrate. And clever software can also calculate the different steps to generate all the required and recommended steps. The choice is yours…

These tints of a spot color are an old issue: designers might use tints of a spot color ink in their designs, but the color shown on their screen, might be different from what will actually be printed. If a designer could import a full-blown CxF/X-4 in the design application, the visual appearance of tints would conform better to the actual print, on the condition that the monitor is capable and calibrated. And we have to ask ourselves: do we really need this kind of detail? If the dot gain on the press is slightly different, the tint color will look different.

Creating a CxF/X file
In an ideal world, every spectrophotometer would have the option to export a measurement as a CxF/X file, in combination with an ASE file for use in design applications. This is the preferred way of Project BBCG, but it’s still a work in progress.

And manufacturers of spectrophotometers are moving that way! Recently MYIRO updated their Spotcolor tool, which now includes the option to export a measurement to both CxF and ASE. Nice! This is how you can put Project BBCG into action!

And we have contacts with several other suppliers to discuss this feature!

One point of attention is, of course: which kind of CxF is exported? Let’s hope it conforms to the ISO standard, not just the legacy CxF3. And for demanding print buyers: the full-blown CxF/X-4. BTW, dear printer, prepress house: there might be a business opportunity for you! CxF/X-4 is based on measurements of real prints, with real ink on real substrates. Somebody with the right skills needs to do that. It would be a logical service for printers and prepress houses.

According to this presentation from 2020, the following tools can also generate CxF files:

In the comment section also following tools were mentioned:

This list is probably not complete, if you are aware of other tools, please leave a comment or send me an e-mail. I will update the list when I’m aware of extra tools!

More tools are on the market on the ‘consuming’ side of CxF (embedding in PDF, color conversions). Feel free to leave the name and a brief description in the comments if you provide such a tool!

CxF and PDF
All of this is nice, but what about PDF? Wouldn’t the best option be to include that CxF in the PDF file that a customer sends to a printing company?

That’s the way to go, with one sidenote: only with PDF version 2 it’s easy, you can attach or embed CxF/X-4 files, just like fonts and ICC profiles. With older versions, including PDF/X-4 which is based on PDF 1.6, you need special tools to do that.

PDF 2.0 (or to be complete: ISO 32000-2:2017) became official in 2017. PDF/X-6, which is based on PDF 2.0, followed in 2020.

Only last year, Adobe launched the version of their Adobe PDF Print Engine (APPE) that supports PDF/X-6, including ‘spectral brand colors’.  Earlier this year, I heard a vendor say that, at this moment, the demand for PDF/X-6 is limited. Let’s hope that this changes soon! For the packaging and labels industry, there is also another interesting feature in APPE v6: Expanded Color Gamut (ECG) printing.

Also the Harlequin RIP from Global Graphics supports PDF 2.0. 

For more information on PDF 2.0 and PDF/X-6, check out this presentation by Dov Isaacs for the Ghent Workgroup! 

CxF and Adobe CC applications
Now that we know that the latest version of both the PDF file format and the Adobe PDF Print Engine (which drives a lot of output devices) support CxF, the big question is: when will Adobe decide to include support of CxF as a color exchange format in their Creative Cloud applications. It’s a point I’ve been making since the breakup between Adobe and Pantone.

And yes, Adobe has the ACE file format for easy exchange of colors and color libraries – it’s part of the Project BBCG framework. But ASE has one crucial flaw: it only specifies Lab values, not the – very important – measurement mode. And this is where color is ‘broken’ at this moment, as I explained in a previous article: all recent ICC profiles are based on M1 values (D50), but the Pantone libraries are based on M2 (D50, UV cut). If CxF files would be used as color definition, including that measurement mode, the color engine could recalculate the colors, when necessary. Of course, Adobe could add the M-values to the ASE file format, but wouldn’t it be better to adopt the ISO standard the world agreed upon: CxF/X-4?

Why is this important?
Now that we have taken a deeper look into the technicalities and opportunities of CxF, we need to address the bigger issue: do we really need this kind of detail? Or, to rephrase this: for which applications do we need this kind of detail? Creating a full-blown CxF involves a lot of work and the right resources. Does it have a big enough return?

It might be for some applications, especially in packaging and when using different substrates. But it will not be for general-use printing, especially when only in CMYK. So, please, don’t turn CxF into a fetish!

If you have a genuine business case for CxF: start today! Check out your vendors and customers to see if and how they support CxF and go for it.


Full disclosure: the NIX Spectro 2 that was used to create the screenshots above, was kindly provided by NIX Sensor, for testing purposes.

(Visited 808 times, 1 visits today)
About Eddy Hagen 135 Articles
The printing industry has changed significantly over the last few decades. And that change isn't over yet. Eddy Hagen has been observing all these changes from a front row seat, since 1988. He has seen and debunked hypes that still don't deliver. He has seen and promoted small evolutions that had a big impact. He has connected the dots to get a better view. He is an independent mind who might be able to give you unique insights in the world of print and innovation.


  1. Hi Eddy

    Many thanks for this really interesting post. You have “demystified” this format.
    Just one thing : You give a list of tools able to generate CX files but please note EFI (or Fiery now) )with its Command Workstation and Spot Pro module is also able to generate CXf files

    Kind regards

  2. Babel Patch Tool can export to CxF3, not sure if they are working on CxF/X-4

Leave a Reply

Your email address will not be published.