Every pipeline has a delivery format it secretly fears, and for Blender artists heading toward Apple devices that format is USDZ. It looks exotic - Pixar heritage, AR ambitions, a zip archive wearing a 3D disguise - but the workflow is boring in the best way: pack, export, test on a phone. The failure modes are few and famous, which is exactly why they are worth memorising once.
What USDZ is, and what it is not
A USDZ file is a USD scene - Pixar's Universal Scene Description - packaged as a single uncompressed archive, textures and all. That packaging is the entire point: iOS opens one file, not a folder of parts. What it is not: an editing format. Nobody opens USDZ to work; they open it to receive. You author in Blender, deliver in USDZ, and the recipient experiences the result inside Quick Look, Safari, Messages, or an AR viewer on the device.
Export from Blender, the checklist version
01 - Pack before you export. File, External Data, Pack Resources - every image the materials reference must live inside the .blend so the exporter has something to bundle. If Blender is reading a texture from a forgotten downloads folder, the USDZ will not include it, and the gap will not appear until the phone.
02 - Standard image formats only. JPEG and PNG are the safe currencies inside USDZ. Convert the exotic ones; keep textures at sensible sizes, because AR loads on mobile hardware with mobile memory limits.
03 - Units to metres, honestly. USD thinks in metres and AR assumes real-world scale - a mug is 0.09, a sneaker is 0.3. Set the scene unit scale so the dimensions read true, and the AR placement will behave the first time.
04 - Export. File, Export, Universal Scene Description; name the file with the .usdz extension to get the packaged single-file form. Recent Blender versions offer this natively; older setups use a USDZ-specific addon with the same output.
05 - Test on a real device. AirDrop the file to an iPhone, open it from Files, and look with your own eyes. Two minutes of device testing catches everything a desktop preview cannot.
Importing a USDZ
Recent Blender versions import USDZ directly - drag it in and work. When that fails, exploit the archive: USDZ is an uncompressed zip, so copying it, renaming to .zip, extracting, and importing the .usdc inside works on every version that speaks USD at all. Keep the extracted textures beside the file and the materials arrive intact.
The missing-textures classic
Nine USDZ support tickets in ten are one disease: textures that never made it into the file. The causes in order of frequency - unpacked images, image formats Quick Look will not read, and absolute paths pointing at machines the phone has never met. The cure is the checklist above; the vaccine is opening every export on the device before delivery day. And when the file is genuinely fine but the model looks wrong, check scale before anything else - AR is unforgiving about a sneaker the size of a bus.
What AR-ready actually means
Mobile AR is a performance contract your mesh has to sign: triangles in the tens of thousands, textures sized for phones, materials that read under dynamic light, and no reliance on your Blender lighting rig - Quick Look brings its own. Ship it static, hero-lit and clean; let the runtime do its job. Where the pipeline is shared with web delivery, GLB rides along from the same scene - one build, two containers, every door on the phone and the browser opens.
