Context

CarTrawler powers car rental for 70+ airlines and 250+ travel brands across 150+ countries, and displays more than 1 billion cars a day. The car imagery library was being rebuilt from 3D models to deliver consistent, high-resolution images at scale, and the team saw an opportunity to add dynamic colouring, something that had always been written off as unachievable.

Challenge

Serving every car in every possible colour would require storing and managing thousands of image variants per model, an approach that didn’t scale. Any solution also had to add zero overhead to the front end: no extra JavaScript, no CSS tricks, no additional image requests.

Approach

Each car was rendered from a 3D model and exported to layered PSD files, which let us separate the bodywork from everything else. Working with imgix, we designed a two-layer compositing technique on top of those exports. A base car image sits underneath a transparent “paint layer” covering only the areas to be coloured. Using imgix’s monochrome and watermark parameters, the paint layer is colourised on the fly and composited over the base, all within a single image URL. The last six characters of the URL control the hex colour value.

Outcome

Cars can now be dynamically coloured at the CDN level with no front-end changes. The approach scales to any colour without storing variants. imgix published it as a case study, and the technique was picked up by teams working with other product categories beyond cars.