Ghosting and ringing on 3D prints: how to fix it
Ghosting, also called ringing, is the ripple echo that appears on a wall just after a corner, hole or embossed letter. The printer's frame and belts keep vibrating for a moment after a sharp change of direction, and the nozzle draws that wobble into the plastic. Fix the mechanics first, then let input shaping and sensible acceleration handle what's left.
- Check the belts and pulleys. Belts should be firm and even, and pulley grub screws tight.
- Put the printer on a heavy, solid surface that doesn't wobble when you push it.
- Run input shaping or vibration calibration from the printer menu, or tune it on Klipper or Marlin.
- Lower outer wall acceleration in the slicer, for example by half, and reprint.
- Still ringing? Measure the ripple frequency. Below about 20–25 Hz, stiffen the printer or lighten the moving parts.
What is ghosting on a 3D print?
Look at a wall right after a sharp feature. If you see a series of ripples that start strong and fade out over a few millimetres, that's ringing. It's most obvious next to text, holes and corners, and under a low, raking light.
Every printer has natural resonant frequencies, typically somewhere between about 20 and 100 Hz depending on its design. A sudden direction change kicks the axis into vibrating at that frequency. The spacing of the ripples tells you the frequency:
Frequency (Hz) = print speed (mm/s) ÷ ripple spacing (mm)
Measure across several ripples and divide for better accuracy. At 100 mm/s, ripples 2 mm apart mean a 50 Hz resonance. Klipper's ringing tower test uses the same maths.
Your outer walls print at 120 mm/s and the ripples after each corner are 2.4 mm apart. What's the resonant frequency?
Frequency = speed ÷ spacing = 120 ÷ 2.4 = 50 Hz. That's the number you'd enter as a shaper frequency on Marlin, or use to check what Klipper's accelerometer measured.
Ghosting vs other wall defects
Not every ripple is ringing. Check the pattern before you change anything.
| Defect | What it looks like | Usual cause |
|---|---|---|
| Ringing (ghosting) | Ripples that start right after a corner or feature and fade with distance | Vibration after a direction change |
| Vertical fine artifacts (VFAs) | Fine, evenly spaced vertical lines across the whole wall, not tied to corners | Stepper motors, pulleys, idlers or belt teeth; changes with speed |
| Infill showing through | The infill pattern visible as a shadow on thin walls | Too few walls or infill pressing on the perimeter |
| Z banding | Horizontal lines or a regular wave repeating up the part | Z axis lead screw, couplers or layer height steps |
| Seam zits | Bumps lined up in a vertical stripe | Where each layer starts and ends; see blobs and zits |
If the ripple pattern changes when you change acceleration, it's ringing.
If it changes only with speed and covers the whole wall evenly, it's more likely VFAs, which input shaping won't fix.
Ghosting causes and fixes at a glance
| Cause | Check | Fix |
|---|---|---|
| Loose or uneven belts | Belt sags or sounds dull when plucked | Tension to your printer maker's spec |
| Loose pulleys, wheels or frame bolts | Toolhead or bed rocks by hand | Tighten grub screws, eccentric nuts and frame joints |
| Wobbly surface | Printer shakes the table during fast moves | Move to a heavy, rigid surface |
| No or outdated input shaping | Ringing returned after moving the printer or adjusting belts | Re-run calibration |
| Acceleration too high | Ringing shrinks clearly at lower acceleration | Lower outer wall acceleration |
| Heavy moving mass or flexible frame | Measured frequency below about 20–25 Hz | Lighten the toolhead or bed, stiffen the frame |
Fix 1: Tighten belts, pulleys and wheels
Input shaping can only cancel a resonance it can predict. Loose parts make the resonance messy and shift it over time, so start here.
- Check belt tension. Belts should be firm, with both sides of a CoreXY even. Follow your printer maker's method: Voron, for example, aims for about 110 Hz when plucking a 150 mm span; Bambu Lab X1 and P1 printers use a spring tensioner you release and re-lock; Prusa's CORE One has a belt tuning wizard on the printer.
- Tighten pulley grub screws. A pulley slipping on the motor shaft causes ringing and layer shifts.
- Adjust V-slot wheels on wheel-based printers like the Ender 3. Turn the eccentric nuts until the carriage has no wobble but the wheels still turn with your fingers.
- Tighten frame bolts, especially on kit printers, and check the gantry is square.
- Secure loose cables and Bowden tubes so they don't whip around during fast moves.
The belt tension and calibration guide has the full procedure.
Fix 2: Use a rigid, heavy surface
A light table that sways is just another spring in the system. Put the printer on a sturdy bench, or place a heavy paving slab or stone board under it. If the printer has a long, flimsy frame, bracing helps more than any setting.
Tip: re-run your printer's vibration or input shaper calibration whenever you move it to a new surface. The resonance changes with what it's standing on.
Fix 3: Input shaping on Bambu, Prusa, Klipper and Marlin
Input shaping is a firmware feature that shapes each motion command so it doesn't excite the printer's resonant frequency. It needs to know that frequency, either measured with an accelerometer or worked out from a test print.
Bambu Lab: vibration compensation
Bambu printers measure their own resonance. Run Vibration Compensation (often alongside Motor Noise Cancellation and bed leveling) from the calibration menu on the printer's screen. The menu location varies by model. Bambu recommends recalibrating after tensioning belts, moving the printer or updating firmware.
Prusa: Input Shaper
The MK4/S, MK3.9/S, MK3.5/S, XL, MINI/+ and CORE One run Input Shaper and ship with factory-tested values, so most users never touch it. You can run an accelerometer calibration from Settings → Hardware → Input Shaper → Calibration on the LCD. Some models have a built-in accelerometer; others need Prusa's plug-in accelerometer for this step.
Klipper: accelerometer resonance testing
Klipper supports accelerometers such as the ADXL345, LIS2DW, LIS3DH and MPU-9250 family. Mount it on the toolhead (and on the bed for the Y axis of a bed slinger), configure [resonance_tester], then run:
ACCELEROMETER_QUERY
TEST_RESONANCES AXIS=X
TEST_RESONANCES AXIS=Y
SHAPER_CALIBRATE
SAVE_CONFIG
SHAPER_CALIBRATE measures both axes and suggests a shaper type and frequency. For most printers that's MZV or EI. The result is saved as an [input_shaper] section like this:
[input_shaper]
shaper_type_x: mzv
shaper_freq_x: 49.4
shaper_type_y: mzv
shaper_freq_y: 38.2
Two things catch people out. First, the suggested maximum acceleration isn't applied automatically, so set max_accel yourself. Second, keep square_corner_velocity at its default of 5 mm/s; Klipper advises against raising it with input shaping because it increases smoothing. No accelerometer? Klipper's ringing tower test works out the frequency from a print.
Marlin 2.1.2+: M593 ZV input shaping
Marlin has had ZV input shaping since 2.1.2, but it must be enabled when the firmware is built (INPUT_SHAPING_X and INPUT_SHAPING_Y), so check your printer's firmware first. Marlin has no accelerometer tuning. Instead, print Marlin's frequency sweep pattern or a ringing tower, read off the best frequency and damping, then set and save them:
M593 X F49.4 ; X-axis shaper frequency in Hz (example)
M593 Y F38.2 ; Y-axis shaper frequency in Hz (example)
M593 X D0.15 ; damping (zeta) factor, from the damping test
M500 ; save to EEPROM
M593 ; no parameters: report current settings
On older Marlin printers without input shaping, lowering acceleration and jerk or junction deviation is the main lever.
Fix 4: Lower acceleration for outer walls
Acceleration decides how hard each direction change hits the frame. At 100 mm/s, 2,000 mm/s² takes 2.5 mm to reach full speed; 10,000 mm/s² does it in 0.5 mm, which is a much bigger kick. Lowering acceleration only on outer walls keeps the print fast while cleaning up the visible surface.
- OrcaSlicer and Bambu Studio: Speed → Acceleration → Outer wall.
- PrusaSlicer: Print Settings → Speed → Acceleration control → External perimeters.
- Cura: enable Acceleration Control, then set Outer Wall Acceleration.
Print the same test part at a few values, for example halving and quartering your current outer wall acceleration, and keep the highest one that looks clean. On Klipper, firmware max_accel still caps whatever the slicer asks for. The cooling, speeds and acceleration guide covers the trade-offs.
Fix 5: Reduce moving mass and stiffen the frame
If the measured frequency stays below about 20–25 Hz, settings can only do so much. Klipper's own docs suggest stiffening the printer or reducing moving mass at that point.
- Remove heavy add-ons from the toolhead, such as oversized fan ducts or extra brackets.
- Use a lighter bed or build plate on a bed slinger if the Y axis is the weak one.
- Add frame bracing to tall or open-frame printers.
- Replace worn wheels, bearings or belts that have stretched or lost teeth.
If ringing came with skipped steps or a part that's offset partway up, the problem is bigger than vibration: see layer shifting.
Frequently asked questions
What is the difference between ghosting and ringing?
In FDM printing they are two names for the same defect: a fading ripple echo on a wall just after a corner, hole or embossed feature, caused by the printer's frame and belts vibrating after a sudden change of direction.
What causes ghosting on 3D prints?
Vibration. When the toolhead or bed changes direction quickly, loose belts, a flexible frame, a wobbly table or heavy moving parts keep oscillating for a moment, and the nozzle prints that motion into the wall. High acceleration makes it worse.
Does input shaping remove ringing completely?
It removes most of it, but it works best on a mechanically sound printer. Input shaping is tuned to the printer's measured resonance, so loose belts or a wobbly surface change the resonance and leave ringing behind. Fix the hardware first, then calibrate.
Why is ringing worse in Y on my bed slinger?
On printers that move the bed front to back, the Y axis carries the whole bed and the print, so it is heavier and usually resonates at a lower frequency than X. Lower frequencies produce larger, more visible ripples, so Y often needs a lower acceleration.
What acceleration should I use to stop ghosting?
There is no universal number. Start from your printer's stock profile, then lower outer wall acceleration in steps until the walls are clean. Printers with tuned input shaping can usually run much higher acceleration than older machines without it.
Related articles
Sources & further reading
- Klipper Docs — Resonance compensation
- Klipper Docs — Measuring resonances
- Marlin Firmware — M593: ZV input shaping
- Prusa Knowledge Base — Input Shaper
- Bambu Lab Wiki — Printer calibration guide
- Voron Documentation — Secondary printer tuning (belt tension)
Tools for thisAll tools
Watch it doneVideo library
Thanks! We read every note and use them to decide what to update next.