Run Depth Anything 3
The node that does depth, multi-view consistency, and camera poses
- da3_model
- image
- da3_geometry
Depth Anything 3 (DA3), from ByteDance Seed, is the latest chapter in a story that starts with MiDaS and runs through the Depth Anything line. What's genuinely new: one model family covers monocular depth, multi-view depth, camera pose estimation, and 3D reconstruction - you can throw it a stack of photos of the same scene and get consistent depth plus where each camera was, instead of hand-aligning separate maps. This node is the entry point for all of it in ComfyUI core, and it landed native in June 2026.
How it works
A plain DINO encoder and a unified depth-ray representation let the same architecture handle one image or many. Outputs are computed at a processing resolution you choose, then upsampled back to your original image size - that's why a small resolution doesn't mean a small output, just a faster run. The model family splits into four checkpoints with real capability differences:
- Small / Base - fast, dual-head, output a depth confidence map, and have a camera decoder. These are the ones that do multi-view.
- Mono-Large - the quality pick for single-image depth, with sky detection.
- Metric-Large - same, but outputs raw depth in metres.
The inputs that matter
- image - one image for mono mode, or a batch of views of the same scene for multi-view mode.
- resolution (default 504, step of 14) - the longest-side processing resolution. Lower = faster/less VRAM, higher = more detail.
- resize_method -
upper_bound_resize(default) caps memory by fitting the longest side;lower_bound_resizefits the shortest side, preserving detail on tall/wide images at a memory cost. - mode -
monoormultiview. Multi-view adds two controls: ref_view_strategy (which view is the geometric anchor;saddle_balancedis the safe default) and pose_method (cam_declearns FOV from features,ray_posederives it geometrically - the docs suggest trying both if output looks distorted).
What comes out
A da3_geometry packet: depth, image, and mode always; sky for Mono/Metric; confidence for Small/Base; and extrinsics + intrinsics for multi-view. That feeds DA3Render for previews or DA3GeometryToMesh for a triangulated mesh in a shared world frame.
Common issues
The big one: multi-view mode requires Small or Base. Pick Mono-Large and flip to multi-view and you get a clear error explaining the model lacks cross-view attention. Community testing also found camera alignment is the weak spot - "if camera alignment was just slightly better this would be perfect" is the recurring take. And while DA3 is often used per-frame on video, it's still an image model at heart: frame-by-frame work can flicker, which is the known depth-video failure mode. For spatially consistent depth across many views, this is the strongest thing in core ComfyUI right now.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| da3_model | DA3_MODEL | — | |
| image | IMAGE | — | |
| resolution | INT | 504140–2520 | Resolution the model runs at (longest side, multiple of 14). Lower = faster / less VRAM. Higher = more detail. Output is upsampled back to the original size. |
| resize_method | COMBO | upper_bound_resize | upper_bound_resize: scale so the longest side = resolution (caps memory, default). lower_bound_resize: scale so the shortest side = resolution (preserves more detail on tall/wide images, uses more memory). |
| mode | COMBO | mono: single view image (works with any model variant). multiview: all images processed together for geometric consistency + camera pose (for Small/Base models only). |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| da3_geometry | DA3_GEOMETRY | Dictionary of non-normalized tensors. Always has the keys: depth, image, mode. Optional keys: sky (for Mono/Metric), confidence (for Small/Base), extrinsics + intrinsics (for multi-view). |