Fixes for the problems that come up most: a family that found only one type, grey or flat-looking materials, a blank or blocked embed, missing FBX textures, and AR that will not launch.
Almost always a type catalogue that did not come with the family. Revit keeps the type list for a large family in a separate .txt next to the .rfa, and without it VUE only sees the types embedded in the family itself — usually a single placeholder.
Upload the pair together. If you are not sure the family has one, look for a .txt with the same name in the same folder. More in uploading models.
VUE keeps the materials the file assigns and cannot invent ones that were never set. Geometry left as <By Category> in Revit has no material of its own, so it arrives grey.
There is a second, commoner cause that does not look like a materials problem at all: a family that uses your own bitmap textures converts with those materials as a flat colour if the images did not travel with the file. Right in Revit, grey or plain on the web. Uploading models covers what to send.
Three fixes:
A different problem from grey, and it has a different fix. The colour is correct, the model reads like a printed card: no grain, no weave, no grout line.
That is a missing relief map — Revit calls it a bump map — and converters before 0.6.0 did not read them at all. Nothing in the material panel can fix it, because a model's bitmaps live inside the converted file and cannot be re-pointed.
Re-upload the family. It converts on the current converter and the relief map comes with it. That upload is not cached and does cost conversion time, once per family — see why some conversions are free.
To check it worked, open the material and look at the Relief slot: it should show a square marked from the model. A greyscale square is a height map and a lavender-blue one is a normal map, and both are correct.
An FBX does not contain its textures — it points at them by a path on the machine that exported it, which does not exist on our side.
Zip the FBX together with its texture files and upload the zip, or select the textures alongside the model in the upload picker. Filenames must match what the model asks for, including capitalisation. See sending textures.
The embed has an allowed-domain list and the page it is on is not in it. Add the domain in the embed’s options.
Include every variant the page is actually served from — www and non-www are different, and your staging site is different again. See locking it to your domains.
The model's Visibility is still Private, which is what every new model starts as. A private model's embed answers 404 wherever it is pasted — and because every control lives inside that page, everything in it appears broken at once: the configurator, the finishes, View in AR. It is one setting, not several faults.
Open the model's Embed page, set Visibility to Unlisted or Public, and press Save. Unlisted works on your own site and stays out of search; Public additionally allows it to be indexed. Either one serves the embed — only Private refuses.
The page now warns you above the snippet while the model is still private, so a code that cannot work is not handed over silently.
The address bar in the studio carries the model's id; an embed URL carries the embed's id, and they are different values that look identical — nineteen lowercase letters and digits. Copy the src out of the snippet rather than assembling a URL by hand, and beware transcribing one by eye: 1 and l are hard to tell apart in most fonts, and one wrong character produces exactly the same "not published" page as a genuinely private model.
An iframe with no height collapses to zero, and the viewer fills whatever box it is given. Set a height, or wrap it in an aspect-ratio box — 4:3 works well for most products.
If it has a height and is still blank, check the browser console on the page for a content-security-policy message: a strict policy on your own site can block the frame.
Three causes, in order of likelihood:
If the AR view opens, the camera comes up and nothing is ever placed, that is a different fault and almost always the same one: the model is too detailed. AR files cannot be compressed, so roughly every triangle costs about seventy-five bytes, and phones stop loading them somewhere above a few megabytes. A 3,000-triangle valve exports at 0.15 MB and places instantly; a 175,000-triangle car exports at 22.5 MB and does not. The viewer now warns you after the tap when a model is over the line, and If the camera opens and nothing appears covers what to do about it.
If the engine failed on our side, the time is not charged. If the file was genuinely invalid, the engine may have consumed time working that out, and in that case it counts.
Settings shows conversion time broken down by model, so you can see exactly what a failed job cost. If it looks wrong, raise a ticket — we can see the per-job engine time.
Confirm the iframe on your page uses the embed address from the embed panel, and that the domain is allowed — a blocked embed shows a licensing notice and records nothing.
Daily totals are what the charts read, so today’s figures firm up through the day. If a page has genuinely been live for a day and the count is still zero, that is a ticket.
Signing up independently creates a new organisation, and organisations cannot see each other. Invite them properly from Manage team — since they already have an account, the invitation adds your organisation to it rather than making a third.
They can then switch between the two from the header. If they have already uploaded models into the wrong one, raise a ticket and we can move them.
The studio shows the full list of rejected parameters and why each one was rejected, so this is answerable without asking us.
If the reason is wrong for your data — it happens on unusual families — you can define the control by hand instead. See defining options by hand.
Raise a ticket and include the model name, where you saw it and the build stamp from the footer. See what to include.