I do it with layers and layer combinations. Keep everything on its proper layer for the existing building, then make layer for each variant (like v1, v2, or whatever works for you). Put all elements of each variant into its own variant layer, then just turn them on or off. The layer combinations thing is to just quickly switch between them using the quick options bar.

Or you can play with Renovation filters - this means you will only need the one set of layers.
Create a new filter for each variation.
Tag all elements to be visible only for that particular renovation filter.
Now just switch filters to change the variations.

You still only have the 3 renovation status but you have always been able to create as many filters as you want.
You can then set your element to show only for that specific filter.
You actually aren't using the status.
Leave every thing as new or existing and so long as that filter you create shows new or existing (not override or hide) and your element is set to show on that new renovation filter (not 'All relevant filters') then you should be able to turn elements on/off by simply changing the filter.

Layers will work if you can put each variant on a single layer —if you want to show site plans, architectural plans, furniture plans, sections, models, renderings, for each variant, and need several layers for each variant and specific combos and views (say, 'plan') for each, it will be crazy. Also layers require you to mess around with layer combinations, which are best kept as standard as possible.

A more powerful and simpler approach would be to have the existing building on a file (let's call it EXST), and create a new file (say VAR01, VAR02…) for each variant, which has the existing building hotlinked into it, all stories and model elements and presentation views and layouts created, etc. For VAR02 you duplicate the VAR01 file, and start work right away —no fumbling with layers or views or layouts or anything. You can go on indefinitely and create 20 variants (you create variants just in case, every time you want to try something) with no additional setup work.

If the existing building model changes, because you want to add additional detail, got a new survey, or decided you'll tear down some part, you just modify EXST and update hotlinks on the variant files. If you decide that some parts of the existing building will be torn down with some variant and not with others (keep a full model of the existing building as a backup somewhere just in case), those existing parts which will not show in all variants need to be modeled in (transferred to; copy-pasted into) each variant file as required, and removed from EXST.

Layers, views, layer combinations, are kept standard. If they evolve, you just transfer them across files with Attribute Manager. You are building on your standard, instead of creating ad-hoc layers and combinations-views for a single presentation. And your renovation filters still work for renovation status views, for each variant.

I second the method suggested by Ignacio with the exception that I have a separate file for all the drawing sheets and just link in external views from the various options being prepared, at present I have one project where I have 6 different options all being developed in parallel, if I had to manage layer states and renovation filter options for this (especially when the client wants a 'B' variant of an option) I think I would go insane

Actually another cool thing about using reno filters is you can also control the annotation in your sections and elevations as well.
Something you can't do with hotlinks as they are only the 3D model and plan annotation.

Barry Kelly wrote:Actually another cool thing about using reno filters is you can also control the annotation in your sections and elevations as well.Something you can't do with hotlinks as they are only the 3D model and plan annotation.

The hotlinked file is the existing building model, which gets placed as a bunch of modules onto each of the variant files. The plan, section, elevation, perspective views are created on each VAR1.pln, VAR2.pln, etc. —if you create the model and drawings for VAR1 before duplicating the pln and starting work on VAR2, you already have your viewpoints in place before you start, a sort of template. And if your viewpoints evolve, you can copy-paste section-elevation markers and cameras from VAR file to VAR file.

[Yes, as Scott said, having a separate layout book file extracting views from each VAR file is the way to go for this scheme, especially if you don't have to deal with long-distance connections.]