25 cities
| City | Rank | 2025 Pop. ↓ | 2020 Pop. | Annual Change | Density | Area (mi²) | Type |
|---|---|---|---|---|---|---|---|
| Rockford | 1 | 169,968 | 170,230 | 0.5% | 1,531 | 111 | Township |
| Rockford | 2 | 147,183 | 148,696 | -0.21% | 2,261 | 65 | City |
| Harlem | 3 | 39,537 | 39,212 | 0.66% | 1,210 | 33 | Township |
| Loves Park | 4 | 23,695 | 23,400 | 0.25% | 1,451 | 16 | City |
| Machesney Park | 5 | 22,815 | 22,933 | -0.11% | 1,799 | 13 | Village |
| Roscoe | 6 | 20,367 | 20,227 | 0.66% | 664 | 31 | Township |
| Cherry Valley | 7 | 19,383 | 19,333 | 0.59% | 640 | 30 | Township |
| Rockton | 8 | 16,240 | 16,138 | 0.65% | 448 | 36 | Township |
| Roscoe | 9 | 10,985 | 10,962 | 0.04% | 1,070 | 10 | Village |
| South Beloit | 10 | 7,983 | 7,982 | 0% | 1,299 | 6 | City |
| Rockton | 11 | 7,861 | 7,859 | 0% | 1,146 | 7 | Village |
| Seward | 12 | 6,763 | 6,651 | -0.09% | 193 | 35 | Township |
| Winnebago | 13 | 4,999 | 4,989 | 0.62% | 152 | 33 | Township |
| Pecatonica | 14 | 4,149 | 4,147 | 0.53% | 119 | 35 | Township |
| Owen | 15 | 3,610 | 3,600 | 0.56% | 102 | 35 | Township |
| Winnebago | 16 | 2,902 | 2,924 | -0.17% | 1,501 | 2 | Village |
| Cherry Valley | 17 | 2,887 | 2,892 | -0.03% | 343 | 8 | Village |
| Durand | 18 | 2,312 | 2,306 | 0.52% | 78 | 30 | Township |
| Pecatonica | 19 | 2,052 | 2,080 | -0.29% | 1,599 | 1 | Village |
| Durand | 20 | 1,381 | 1,389 | -0.14% | 1,503 | 1 | Village |
| Laona | 21 | 1,270 | 1,265 | 0.55% | 47 | 27 | Township |
| Burritt | 22 | 1,105 | 1,098 | 0.82% | 34 | 33 | Township |
| Shirland | 23 | 972 | 965 | 0.83% | 51 | 19 | Township |
| Seward | 24 | 845 | 844 | 0.6% | 24 | 36 | Township |
| Harrison | 25 | 609 | 609 | 0.5% | 25 | 25 | Township |
Rockford is the largest city in Winnebago County, with a population of 169,968.
Harrison is the smallest city in Winnebago County, with a population of 609.
There are 25 cities in Winnebago County, Illinois.