Materials in Revit Reimagined with Goggles, Finishes and Matrix
Revit handles many things well, but materials are still a mess. We built three tools to fix that.

Revit stores families inside the project file. Linked models use relative paths. Images can be embedded. Keynote and shared parameters travel with the model for the most part, even if their definitions live in external files. And yet, materials remain one of the roughest spots in the everyday Revit experience. Textures break when you share files. Auditing what's assigned where is tedious. Getting finish data into schedules means manual work. We've spent years building tools that fix all three.
The texture path problem
Material appearances store texture images as absolute paths on your hard drive. Something like C:\\Users\\Thomas\\Textures\\brick_diffuse.jpg. Each render asset type has its own schema, and none of them support the relative or embedded referencing that the rest of Revit already uses. Move the file to a different machine, download it from ACC, open it on a laptop with a different folder structure, and the textures are gone. Pink defaults everywhere.
We build on top of Revit every day and we really like what Autodesk has done with file portability. The amount of data that travels intact inside an .rvt file is impressive. Materials are just the one area that hasn't caught up.
We ran into this ourselves
At Reope we hit this recently while building an export tool. We needed an orthophoto applied as a terrain material. No add-in runs when the recipient opens the file, so there's no way to fix the texture path automatically. It just breaks. The reaction: images already sit in Revit's link manager with options for absolute, relative, and embedded. Material textures should too.
Why it matters more now
Five years ago this was manageable. Most teams worked on one network, textures lived on a shared drive, everyone mapped the same path. Fine. Today firms work across continents on ACC. Cloud workflows assume files are self-contained, and Revit files mostly are. Except materials. It doesn't crash your project, but it eats an hour here and there, every handoff, every download. Across a 200-person firm that adds up. And for BIM teams already stretched thin, it's exactly the kind of busywork they shouldn't be doing.
Three tools, three problems solved
We're architects and engineers who code, so we've built our way around this. We have tooling that walks through Revit's render asset schemas and repaths textures in bulk, so models arrive with materials intact whether they're deployed across offices or downloaded from the cloud. When no add-in runs on the receiving end, we package textures alongside the model. For teams we work with regularly, we help standardize texture library paths across all machines (the boring-but-effective fix that prevents most breakage before it starts).
Our Matrix tool was built specifically for this. It repaths material assets across an entire project in seconds, handling the different render asset schemas so you don't have to dig through them manually. If your firm shares models across offices or deploys to the cloud regularly, it's worth a look.
Beyond repathing, materials in Revit are just hard to work with in general. It's difficult to get an overview of what's applied where, and getting material data into schedules is surprisingly manual. That's why we also built Material Goggles, which groups every element in your model by its materials (including inner layers, not just the face material) so you can visually audit what's actually assigned. And Room Finishes, which reads the bounding elements of each room and autocompletes your room schedules with the correct floor, wall, and ceiling finish materials. Two things Revit should probably do out of the box, but doesn't.
Matrix, Goggles, Finishes. Three tools that cover the full material workflow, from paths to QA to documentation.
What you can do today
- Standardize your texture library to one path and make every machine map it identically.
- Script the repathing. A Dynamo graph or a simple macro, a few hours of setup saves hundreds over time. Or try our Matrix tool if you want something ready-made.
- Use Material Goggles to audit what's actually assigned in your model. It groups elements by material, including inner layers, so you catch misassigned or missing materials before they become a problem downstream.
- Use Room Finishes to autocomplete your room schedules with floor, wall, and ceiling finish materials pulled straight from the model. Beats copying them by hand.
- Budget for material cleanup in every project that involves cross-office or cloud collaboration. Pretending it won't happen is worse than planning for it.
We deal with this kind of thing constantly, closing the gaps in Revit's material workflow. If your team is burning hours on texture repathing, material audits, or manual finish schedules, get in touch.








