How does a dishwasher work?
No bath of water, just 3 litres sprayed round and round by arms that spin on their own recoil. Take a dishwasher apart in 3D and see why it can use a tenth of the water your sink does.
▶ Play with it · Read the 60-second explainer · Watch the 40-second video
- A shower, not a bath. A dishwasher lets in only about 3 litres at a time. A pump pushes it through a heater to two spray arms, the jets hit the dishes, and the water runs through a filter back to the sump to go round again, many times a minute.
- Arms that spin on recoil. No motor turns the spray arms. The holes are drilled at a slant, so each jet pushes the arm the other way, like a lawn sprinkler. With about half a bar of pressure the water leaves at about 10 m/s and the arm turns at a few tens of rpm.
- A programme of stages. Cold pre-rinse, hot main wash with detergent, rinse, hot final rinse with rinse aid, then dry. Each stage lets in fresh water and pumps it away. Almost all the electricity heats water and dishes, so the long Eco programme cleans at 50 °C and uses the least energy.
- Chemistry does the scrubbing. Alkali turns fat into soap, enzymes snip up egg and starch, and oxygen bleach lifts tea stains. A resin softener swaps calcium for sodium and is recharged with salt. Rinse aid lowers surface tension so water sheets off instead of drying into spots.
- Hot dishes dry themselves. Evaporating water needs about 2,400 J per gram. After a hot final rinse, the dishes carry that heat, and vapour condenses on the cooler steel walls. Plastic stores too little heat to dry fully, which is why zeolite drying and auto door-open help.
- About a tenth of the water. A full modern dishwasher uses about 10 litres on Eco. People in a University of Bonn study used 103 litres on average to hand-wash the same 12 place settings. Run it full: a half load uses nearly the same water and energy.
| Term | Meaning |
|---|---|
| Sump | The small well under the tub floor where wash water collects before the pump sends it round again. |
| Recirculation | Pumping the same few litres from the sump to the spray arms over and over during one stage. |
| Reaction force | The push back on a nozzle as its jet shoots water out. It is what turns the spray arms. |
| Torque | A twisting push. A force far from the centre twists more. |
| Enzyme | A protein that speeds up one reaction, like snipping starch or egg into small pieces that wash away. |
| Ion exchange | Resin beads that trap calcium ions from hard water and release sodium ions instead. |
| Surface tension | The pull between water molecules that makes drops round. Rinse aid weakens it so water sheets off. |
| Latent heat | The energy needed to turn water into vapour: about 2,400 joules per gram. |
| Zeolite | A porous mineral that soaks up water vapour and gives out heat as it does. |
175 years from a hand-cranked wooden tub to quiet machines that wash a whole dinner with a bucket of water.
- 1850 · The first dishwasher patent (Joel Houghton, USA)
- 1886 · Josephine Cochrane's dishwashing machine (Josephine Cochrane and George Butters, Shelbyville, Illinois, USA)
- 1893 · A prize at the World's Fair (Josephine Cochrane, World's Columbian Exposition, Chicago, USA)
- 1924 · The shape of the modern dishwasher (William Howard Livens, England)
- 1929 · Europe's first electric dishwasher (Miele, Gütersloh, Germany)
- 1949 · The KitchenAid KD-10 (Hobart (KitchenAid), Troy, Ohio, USA)
- 1960 · Fully automatic, with spinning spray arms (Miele, Gütersloh, Germany)
- 2000 · Dishwashers that can see dirt (GE and Bosch, USA and Dillingen, Germany)
The full story, with 27 moments, charts, people and 41 sources: glassbox.how/e/dishwasherclear/history. The data lives in history.json.
Made with the Glassbox studio from this box's storyboard (window.glassbox.director). Free to reuse under CC BY 4.0.
| File | What | Size |
|---|---|---|
glassbox/reel.mp4 |
Reel / Short, with captions and soundtrack | 1080×1920 |
glassbox/video.mp4 |
YouTube video, with captions and soundtrack | 1920×1080 |
glassbox/slide-1…10.jpg |
Instagram carousel | 1080×1350 |
glassbox/thumb.jpg |
YouTube thumbnail | 1280×720 |
glassbox/cover.jpg |
Share card and repo social preview | 1200×630 |
glassbox/history-reel.mp4 |
“History in 10 moments” Reel / Short | 1080×1920 |
glassbox/history-slide-*.jpg |
History carousel | 1080×1350 |
glassbox/post.json |
Post copy and schedule used by the publish kit |
This box has no accounts and no ads, and it ships its own fonts and libraries. When you run it yourself it sends nothing anywhere. On glassbox.how, the site's /bar.js also loads Glassbox's analytics: Google Analytics to count visits (it asks first in the EU, UK and Switzerland, and stays off when your browser sends Global Privacy Control or Do Not Track) and ClickTrust to detect bots.
It remembers a few things in your own browser only, and never sends them anywhere:
| Browser storage key | What it holds |
|---|---|
dishwasherclear.v1 |
Which chapters you have opened, your best quiz scores, and sound on or off. |
Exactly what each one sees is at glassbox.how/privacy.
- Code: MIT. Use it, change it, ship it.
- Explanations, text, images and videos (
glassbox.json,glassbox/): CC BY 4.0. Credit “Glassbox, glassbox.how/e/dishwasherclear”. - Third-party parts keep their own licences: three.js (MIT), Geist, Instrument Serif (SIL OFL 1.1).
- The Glassbox name and logo aren't covered by either licence. See the terms.
Found a mistake? Open an issue. Corrections happen in public.
It's plain HTML, CSS and JavaScript. No build step and no dependencies. Run locally, it contacts no other website.
python3 -m http.server 8000Three.js and the fonts ship in vendor/ and fonts/, so it also works offline.
Then open http://localhost:8000.
| File | What |
|---|---|
index.html, css/app.css |
The page and its styles |
js/app.js, js/stage.js, js/ui.js, js/kit.js |
The shared Glassbox 3D engine: chapters, 3D stage, controls, quiz, video director |
js/dw.js |
DishwasherClear's shared parts and physics: the dishwasher model, spray jets, the spray-arm reaction model and the wash programmes |
js/chapters/*.js |
One file per chapter: the 3D model, controls, text, key terms, quiz and video scenes |
glassbox.json |
Title, question, explainer beats, key terms, browser storage and credits shown on glassbox.how |
reel in each chapter |
The storyboard the Glassbox studio records into short videos |
glassbox/ |
The published video, slides, thumbnail and post copy |
fonts/, vendor/three/ |
Self-hosted Geist and Instrument Serif (SIL OFL 1.1) and three.js (MIT) |




