The victims are believed to be family members of the suspect, identified as Ryan Willis McFarland, 52, of Muscatine, the department said.
Muscatine Police Chief Anthony Kies called the shooting an "act of evil".
received a report of a shooting just after noon on Monday. When officers responded to a home, they found four people with gunshot wounds, police said.
All four victims were pronounced dead at the scene.
McFarland had left the residence before officers arrived, but officials found him shortly after on a riverfront trail near a pedestrian bridge.
He had a self‑inflicted gunshot wound, police said, and received medical aid, but was pronounced dead at the scene.
Detectives later found another man dead from an apparent gunshot wound in a different residence. A further search led officers to a business, where they found another victim, also dead of an apparent gunshot wound.
Online maps show a metal workshop at the address provided by police.