The British Red Ensign: What It Is and Why Getting It Right Actually Matters
The Red Flag With Union Jack is the British Red Ensign. It's a red field with the Union Jack in the upper-left canton. Used historically by merchant vessels and now by certain civilian maritime organizations, it's one of those flags that looks simple until you try to reproduce it accurately and immediately run into proportion and color issues. I spent way too much time on this when I was doing historical document scanning and needed a proper flag asset that wouldn't look wrong next to authentic period photography. Here's the thing most tutorials skip. The Union Jack in the canton isn't just a small UK flag. It has to follow the same proportions as the full Union Jack, which means the white diagonal cross of St Andrew has to be counterchanged properly. The red diagonal of St Patrick has to sit above or below the white depending on which side you're on. Get this wrong and it's immediately visible to anyone who's actually seen one, which is more people than you'd think, especially in maritime circles. The overall flag ratio is 1:2. The canton occupies the upper hoist quarter, meaning it's half the flag's width and half the flag's height. That's 0.5 by 0.25 of the total dimensions. The Union Jack within it needs to maintain its own 1:2 ratio and account for the fimbriation between the red and white diagonals. Most online generators mess this up because they scale the Union Jack without recomputing the canton proportions relative to the larger flag.
How to Create an Accurate Version
I ended up writing a small Python script using Pillow because existing SVG generators all produced slightly wrong versions and I couldn't verify which was off until I measured them against official Admiralty specifications. The script took about 20 minutes to write and runs in under a second after that. If you want the cleanest result, SVG is the way to go. The path definitions need to be calculated, not approximated. Start with a viewBox of "0 0 60 30" which gives you the 1:2 ratio. The canton is "0 0 30 15". Inside that canton, draw the Union Jack using the standard path geometry, making sure the St Patrick's cross is properly offset. The white fimbriation on the diagonals is critical. Without it, the red lines bleed into each other and the whole flag looks cheap. The official colors per the UK Flag Institute are:
Red: RGB(0, 68, 127) for the Union Jack blue, RGB(206, 17, 38) for the red elements
White: RGB(255, 255, 255)
Red Ensign field: Pantone 186C, approximately RGB(199, 33, 51)
Get the Full Details

The Python approach I actually use
My script starts by defining the full flag dimensions, then draws the red field as a solid rectangle. The canton gets the Union Jack paths layered on top with proper geometric offsets. The trick I learned the hard way is that the diagonals in the canton need to be redrawn at the canton's scale, not scaled down from the full flag. If you scale the full Union Jack paths to fit the canton, the fimbriation widths get distorted because the ratio between the diagonal thickness and the overall size changes non-linearly. The path math itself involves calculating the intersection points of the diagonal crosses. Each diagonal band is 1/15 of the canton's height for the white St Andrew and 1/30 for the red St Patrick, with appropriate offsets. I spent an afternoon verifying these against the Admiralty plate and had to adjust the St Patrick offset by a single pixel to make it match. That kind of detail is invisible at small sizes but obvious at print resolution. The biggest mistake I see is using a pre-made Union Jack image and stretching it into the canton. This warps the proportions. The second is using the wrong shade of red. The Red Ensign red is distinctly different from the crimson in the flag of Jamaica or the red in many military ensigns. It's closer to a standard traffic-light red, not a deep burgundy.
Another issue is the canton placement. Some generators center the Union Jack in the canton instead of aligning it to the hoist and fly edges. The official specification requires the Union Jack to fill the canton completely with no margin. If there's a gap between the Union Jack and the canton edges, it's not a Red Ensign, it's just a red flag with a small UK flag slapped on it. I also ran into a problem with digital color management. When I exported my first version as a PNG, it looked fine on screen but printed as noticeably orange-red. The issue was that the sRGB profile baked into the PNG wasn't matching the printing expectation. Switching to a CMYK workflow for print outputs and keeping sRGB only for screen use resolved this. It's worth noting if you're generating these for any kind of production work.
Where to Get Ready-Made Versions
If you don't want to build your own, the UK Flag Institute maintains official specifications and some member organizations provide verified SVG assets. The GitHub repository for flag-related vector graphics also has a reasonably accurate Red Ensign SVG, though I cross-referenced it against the Admiralty specs and found the diagonal fimbriation was slightly too narrow. A quick manual adjustment fixed it. There are also online flag generators that claim accuracy, but I'd recommend testing any output against a reference image from an authoritative source before using it in anything formal. The visual difference is subtle enough that most people won't notice, but enough that it matters if you're being paid to get it right or if someone who actually knows flags is looking at it.

Quick Reference for the Red Flag With Union Jack
Official ratio: 1:2
Canton ratio: occupies upper hoist quarter
Union Jack in canton: must maintain 1:2 ratio internally
Red field color: Pantone 186C / approximately #C72133
Union Jack blue: #00247D
Union Jack red: #CF142B
Union Jack white: #FFFFFF The whole process of getting this right took me longer than I expected because the easy answers online were all slightly wrong in different ways. The version I ended up with after fixing the path geometries and color profiles has been accurate enough for professional use. If you need it for something similar, the Python script approach gives you full control over every pixel, which is more than you can say for most generator tools out there.