Robot vacuum listings throw around terms like lidar, SLAM, and vSLAM as if they're interchangeable marketing badges, but the underlying navigation method determines what the robot can actually do in your home. Whether a robot can hold reliable no-go zones, remember multiple floors, or recover after you rearrange furniture all traces back to how it perceives and maps space. Understanding the three main approaches makes it much easier to know what a given navigation system will and won't handle.
Lidar (Light Detection and Ranging) navigation uses a spinning turret, usually visible as a raised disc on top of the robot, that emits laser pulses and measures either time-of-flight or phase shift to calculate distance to surrounding surfaces with each rotation. SLAM (Simultaneous Localization and Mapping) is the algorithm layer that takes those distance readings and builds a persistent, coordinate-based map of the space while simultaneously tracking the robot's own position within it.
Because lidar measures distance using its own emitted light rather than relying on ambient illumination, it functions identically in full daylight or complete darkness, and typically achieves positional accuracy within a few centimeters. This precision is what allows lidar-equipped robots to draw accurate room boundaries, detect doorways as separators between rooms, and maintain map consistency across many cleaning cycles without drift.
Visual SLAM (vSLAM) achieves a similar mapping outcome using a single onboard camera instead of a laser rangefinder. The robot identifies distinctive visual features, edges, corners, and contrast points on ceilings and walls, and tracks how those features shift in the camera's field of view as it moves, using that motion to triangulate its own position and build a map.
Because it depends on ambient light and visually distinctive surfaces, vSLAM struggles in dim rooms, at night, and in spaces with large blank white walls, mirrors, or repetitive patterns that don't provide enough unique features to track reliably. Most vSLAM implementations compensate by pairing the camera with supplementary sensors, commonly a gyroscope for orientation and wheel encoders or an optical-flow sensor on the underside for dead-reckoning between visual fixes, which helps bridge gaps when the camera loses tracking.
The simplest and least expensive navigation approach uses a gyroscope for basic heading and physical bump sensors to detect obstacles on contact, without building any persistent representation of the room. These robots move in preset patterns, such as spirals or straight lines, and change direction reactively when they hit something, relying on statistical randomness and timers to eventually cover most of the floor rather than tracking which areas have already been cleaned.
Because there's no coordinate map, this approach cannot support directed cleaning of a specific room, cannot report where cleaning has and hasn't happened, and generally takes noticeably longer to achieve comparable coverage compared to a mapping-based robot, since it has no way to avoid revisiting already-clean areas or to plan an efficient path.
The practical differences between these approaches show up in specific features. No-go or keep-out zones, where you draw a boundary the robot should avoid, require a stored coordinate map to reference against; this is only possible on lidar or vSLAM robots, never on bump-sensor navigation, since there's no persistent map to draw a zone onto in the first place.
Multi-floor mapping, where a robot recognizes which floor it's on and applies the correct saved map, also depends on persistent mapping combined with either a distinct base station per floor or manual floor selection at the dock. Furniture-relocation recovery differs by method too: lidar and vSLAM robots attempt to re-localize by matching newly sensed features or laser returns against the stored map, and will often flag significant deviations or prompt a partial remap if enough of the room has changed; bump-sensor robots have nothing to recover, since they never built a map to compare against in the first place.