Oxford Blue vs Prussian Blue: Color Code Differences
Two historic navies that look alike in isolation and behave very differently side by side.
Oxford blue and Prussian blue are the two most confused navies in design. Shown separately, most people identify both as simply dark blue. Shown together, the difference is obvious and impossible to unsee. This guide sets out exactly what separates them numerically, where each comes from and which one to choose for a given job.
The two values side by side
Oxford Blue
#002147 · rgb(0, 33, 71)
Hue 212° · Lightness 14%
Prussian Blue
#003153 · rgb(0, 49, 83)
Hue 205° · Lightness 16%
| Property | Oxford Blue | Prussian Blue | Difference |
|---|---|---|---|
| HEX | #002147 | #003153 | — |
| Red | 0 | 0 | Identical |
| Green | 33 | 49 | +16 for Prussian |
| Blue | 71 | 83 | +12 for Prussian |
| Hue | 212° | 205° | 7° cooler for Prussian |
| Saturation | 100% | 100% | Both fully saturated |
| Lightness | 14% | 16% | Prussian is 2 points lighter |
| CMYK | 100%, 54%, 0%, 72% | 100%, 41%, 0%, 67% | Prussian carries less magenta |
| White text | 16.05:1 | 13.43:1 | Both AAA |
The one difference that matters
Both colours have zero red. Everything that separates them lives in the green channel: Oxford has 33, Prussian has 49. That extra green pulls Prussian's hue down from 212 degrees to 205 degrees, moving it a measurable distance toward teal.
This is why the two behave so differently in context. Next to a warm colour, Prussian's green content becomes obvious and it reads as marine or petrol. Next to a violet-leaning navy such as Midnight Blue, Oxford looks like the true blue and Prussian looks distinctly green. In isolation, neither reveals anything.
Where they come from
Oxford Blue
The University of Oxford adopted its dark blue in the nineteenth century, and it became the reference point for academic dark blue across the English-speaking world. Its identity is institutional rather than material: it was chosen to be distinguishable from Cambridge's light blue at a distance during rowing races, which is a specification about contrast rather than about pigment.
That origin explains its behaviour. It is a colour designed to be recognised, not a colour derived from a physical substance, so it sits neatly on the blue axis with no chemical quirks.
Prussian Blue
Prussian blue is a real pigment with a documented accidental discovery in Berlin around 1706. It was the first modern synthetic pigment, dramatically cheaper than ultramarine, and it changed what artists could afford to paint. It appears in Japanese woodblock prints, in architectural blueprints (which take their name from the process that used it) and in cyanotype photography.
Its green cast is chemical rather than aesthetic. The iron compound simply reflects that way, and the screen approximation preserves the characteristic.
Choosing between them
Choose Oxford Blue when
- The design needs to read as institutional, academic or formal.
- The navy must sit alongside warm colours such as gold or cream without looking green.
- Print consistency matters, since Oxford's balanced hue is more forgiving in CMYK.
- You are building a conventional navy palette and want the safest anchor.
Choose Prussian Blue when
- The design references drawing, engineering, cartography or blueprints.
- You want a navy that feels slightly unusual without leaving the family.
- The palette includes teals or greens that Oxford would clash with.
- The subject is maritime, where the green content reads as water rather than as error.
Using them together
Their contrast ratio is approximately 1.2:1. That is functionally nothing. Placed in adjacent blocks, the boundary between them looks like a colour management failure rather than a design decision.
If you want both in one system, separate them with lightness. Use one as the dark anchor and derive a much lighter tint of the other as a supporting colour:
:root {
--anchor: #002147; /* Oxford Blue, backgrounds and text */
--support: #4B8FBF; /* a light Prussian derivative */
--support-tint: #DCE9F2;
}
.section-dark {
background: var(--anchor);
color: #EAF1F8;
}
.callout {
background: var(--support-tint);
border-left: 3px solid var(--support);
color: var(--anchor);
}Now the relationship is legible: one is the structure, one is the highlight, and the small hue difference between them adds interest instead of confusion.
Print behaviour
Oxford converts to roughly 100%, 54%, 0%, 72% and Prussian to 100%, 41%, 0%, 67%. The lower magenta figure in the Prussian build is where reproduction problems come from: with less magenta anchoring it, small variations on press swing the colour visibly toward cyan. Oxford's more balanced build is comparatively stable.
For either colour at brand scale, a rich black underprint or a spot ink gives you the depth that a four-colour build cannot reach on uncoated stock.
Telling them apart without a colour picker
There is a simple test that works on any screen. Place the colour in question next to a plain warm grey, something around . Against warmth, Prussian's green content becomes immediately visible and it takes on a petrol quality. Oxford stays resolutely blue.
A second test works in the other direction. Put the colour beside a violet-leaning navy such as . Oxford will look like a normal dark blue. Prussian will look distinctly green, sometimes startlingly so, because the hue gap between them widens to more than twenty degrees.
If you have a colour picker available, the fastest check is the green channel alone. Zero to about 35 puts you in Oxford territory. Forty-five and above puts you in Prussian territory. The red channel is irrelevant for both, since both sit at zero.
Using each one on screen
Oxford Blue is the more versatile of the two in interfaces. Its balanced hue means it plays well with almost any accent, and at 16.05:1 against white text it is comfortable for large filled areas such as headers, footers and hero sections.
.site-header {
background: #002147;
color: #EAF1F8;
border-bottom: 1px solid #0F3B6B;
}
.site-header a { color: #C9D8EA; }
.site-header a:hover { color: #FFFFFF; }Prussian Blue is better used deliberately, where its green content is the point. It suits technical documentation, mapping interfaces and anything referencing drawing or measurement. Pair it with a warm paper tone rather than pure white, which reinforces the blueprint association without needing an explanatory graphic:
.blueprint-panel {
background: #003153;
color: #E8F0F5;
background-image:
linear-gradient(rgba(232, 240, 245, 0.07) 1px, transparent 1px),
linear-gradient(90deg, rgba(232, 240, 245, 0.07) 1px, transparent 1px);
background-size: 24px 24px;
}That grid overlay costs nothing, needs no image file and does more to communicate the reference than the colour alone ever could. Keep the alpha low; a visible grid becomes graph paper, which reads as school rather than as engineering.
Similar colours worth knowing
Several other navies sit between these two. Deep Sea Navy #04203A is greener than Prussian. Heritage Navy #16304F sits almost exactly between the two in hue. Anchor Navy #0E1F3C is close to Oxford but slightly less saturated, which makes it easier to work with across large areas.
Compare all of them directly in the shade collection, filtering by the Dark Navy and Teal Navy categories. For the full conversion detail behind these numbers, see the complete color code reference.
Related guides
About the author
navy blue color code Editorial Team researches and maintains the navy shade library at navy blue color code. Every value published here is derived from its source HEX code rather than transcribed, and articles are reviewed whenever the underlying standards change. Published by navy blue color code. Corrections are welcome at [email protected].
Frequently asked questions
What is the Oxford blue color code?
Oxford Blue is #002147, equal to rgb(0, 33, 71). It is the official dark blue of the University of Oxford.
What is the Prussian blue color code?
Prussian Blue is #003153, equal to rgb(0, 49, 83). It approximates the historic iron pigment discovered in Berlin in the early eighteenth century.
Which is darker, Oxford blue or Prussian blue?
Oxford Blue is darker at 14% lightness compared with 16% for Prussian Blue. The difference is small enough that context usually matters more than the measurement.
Can I use them together?
Only with a separator. Their contrast ratio is around 1.2:1, so adjacent blocks of the two read as a printing error rather than a design choice.
Which one suits a logo better?
Oxford Blue is the safer choice. Prussian Blue shifts noticeably in CMYK because of its green content, making consistent reproduction harder.