In a clean model, every element is hosted correctly from day one. That is not what happens on real projects. You inherit files where lighting fixtures, air terminals, or devices are tied to the wrong level, and now that level needs to go.
The problem is predictable: using “Pick New Host” in Revit 2026 often shifts the element in Z (and sometimes X/Y). What you need is simple: change the host without touching the element’s absolute coordinates.
This guide covers the methods that actually work in production.
Quick Overview: What Works and When
| Method | Keeps XY | Keeps Z | Best Use Case | Risk Level |
|---|---|---|---|---|
| Cut + Paste Aligned | Yes | No (needs correction) | Large batches | Low |
| Group Trick | Yes | Often Yes | Hosted families | Medium |
| Edit Work Plane | Yes | Yes (more stable) | Face/work-plane families | Low |
| MEP Level Change (Runs) | Yes | Yes | Pipes, ducts | Low |
| MEP Fittings Handling | No | No | Fittings | Medium |
| Dynamo Script | Yes | Yes (exact) | Massive datasets | Low |
Method 1: Cut and Paste Aligned (Most Reliable Native Workflow)
This is still the most dependable native method for rehosting multiple elements across levels.
Steps:
- Select the elements hosted to the wrong level
- Cut to Clipboard (Ctrl + X)
- Go to Modify > Paste > Aligned to Selected Levels
- Choose the new level
What it does well:
- Preserves XY coordinates
- Works on large selections without instability
The catch: Revit resets the “Offset from Host”.
Example:
- A light at 2800 mm above Level 1
- After paste to Level 2 → still 2800 mm above Level 2
Result: the element shifts vertically.
Important nuance: If your selection contains elements with different original offsets (e.g. 2500 mm and 2800 mm), adjusting them all at once will flatten them to a single height.
Correct workflow:
- Process elements by groups of identical elevation, or
- Use a section/elevation view to visually verify and correct offsets
When to use it:
- Hundreds of elements
- When stability matters more than precision on first pass
Method 2: The Grouping Trick for Hosted Families
This workaround changes how Revit handles hosting logic.
Steps:
- Select elements
- Create a temporary group
- Select an individual element inside the group (Tab-select, do not enter Edit Group)
- Click Pick New Host
Observed behavior:
- In many cases, the element keeps its XYZ position
- Only the host parameter updates
Important limitation: This works best with face-based families.
For floor-based or ceiling-hosted families, Revit will often:
- Ignore the trick
- Force repositioning
Why it works: Grouping alters how Revit resolves host relationships internally.
When to use it:
- Lighting fixtures
- Face-based devices
- Situations where Cut/Paste would break too much
Method 3: Strategy for MEP Linear Elements (Pipes, Ducts, Cable Trays)
MEP systems behave differently because of connections and system logic.
Linear Runs (Pipes, Ducts)
- You can change Reference Level in Properties
- Elements stay at the same absolute elevation
This is the most stable native behavior in Revit for rehosting.
Fittings (The Problem Area)
Changing host level on fittings often causes them to:
- Disconnect
- Jump in space
- Break systems
Recommended workflow:
- Change level on straight segments first
- Delete problematic fittings
- Use Trim (TR) to reconnect runs
Revit regenerates fittings correctly on the new level.
Important: The risk is not in the runs — it is entirely in the fittings behavior.
Method 4: Edit Work Plane (More Stable Than Pick New Host)
For face-hosted or work-plane-based families, this is often cleaner.
Steps:
- Select element
- Click Edit Work Plane
- Activate Disjoin if needed (in the Options Bar)
- Assign a new Level or Named Reference Plane
Why Disjoin matters: If the element is constrained to nearby geometry (walls, ceilings), Revit may:
- Refuse the change
- Throw constraint errors
Disjoin allows the reassignment without constraint conflict.
Why this method is stable:
- Avoids aggressive host reassignment logic
- Keeps element position more reliably than Pick New Host
Best practice:
- Use named reference planes consistently
- Do not rely only on levels for hosting
Method 5: Dynamo (Exact Control of Coordinates)
For large datasets or strict coordination requirements, this is the only method that guarantees precision.
Basic logic:
- Get Location (XYZ)
- Change Level parameter
- Set Location back
Result:
- Full preservation of absolute coordinates
- No manual offset correction
Use case:
- Hundreds or thousands of elements
- Critical coordination models
- When offsets cannot be trusted
Common Mistakes When Rehosting in Revit
- Using Pick New Host directly on large selections
- Forgetting that Offset is relative to host, not absolute
- Trying to fix MEP fittings manually instead of rebuilding
- Rehosting after documentation (dimensions/tags will break)
- Ignoring reference planes as stable hosts
Best Method by Use Case
- Large batch of elements: Cut + Paste Aligned
- Mixed elevations: Process in groups or verify in section
- Face-based families: Group Trick or Edit Work Plane
- MEP systems: Change levels on runs, rebuild fittings
- High precision requirement: Dynamo
FAQ: Advanced Rehosting Troubleshooting
Why is my “Offset” parameter grayed out after rehosting?
This usually happens with families set to “Always Vertical” or with internal constraints.
If Offset is locked:
- Use Cut and Paste Aligned
- This forces Revit to recalculate position
What happens to tags and dimensions when I rehost?
They will often be deleted.
Tags and dimensions depend on:
- Element ID
- Host relationship
Rehosting breaks that link.
Rule: Always rehost before documentation.
Does pinning an object prevent movement during rehosting?
No.
Pinning only blocks:
- Manual move
- Drag operations
Revit’s hosting logic overrides pinning.
Can I automate this for hundreds of elements?
Yes, using Dynamo.
Typical workflow:
- Read element coordinates
- Change host/level
- Reapply coordinates
This is the only reliable way to preserve true Z elevation across levels.
Why does my window no longer cut the wall after moving it?
The element is still logically hosted to the original wall.
Correct workflow:
- Ensure the window is physically intersecting the new wall
- Cut (Ctrl + X)
- Paste Aligned to Same Place
- Select the correct host
If the element is not in contact with the new wall, Revit will keep referencing the original host.
Field Notes from Practice
- Always check absolute elevation, not just offset
- Test on a small sample before scaling
- Expect cleanup with inherited models
- If the model is unstable, use Dynamo early instead of fighting Revit behavior
This is not about one tool. It is about choosing the right method based on how the element was built and hosted.
