Navy is more neutral — a darker blue with less violet underneath, often the safest 'serious blue.' Royal blue is brighter and more saturated, leaning slightly toward purple but with more vibrancy. Indigo sits between with the most violet undertone and the deepest, most atmospheric read — it feels older, more heritage, more like a real dye than a printed color.