Deprecated: Return type of Phpfastcache\Util\ArrayObject::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/devzheng/workspace/psr/vendor/phpfastcache/phpfastcache/lib/Phpfastcache/Util/ArrayObject.php on line 106

Deprecated: Return type of Phpfastcache\Util\ArrayObject::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/devzheng/workspace/psr/vendor/phpfastcache/phpfastcache/lib/Phpfastcache/Util/ArrayObject.php on line 115

Deprecated: Return type of Phpfastcache\Util\ArrayObject::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/devzheng/workspace/psr/vendor/phpfastcache/phpfastcache/lib/Phpfastcache/Util/ArrayObject.php on line 130

Deprecated: Return type of Phpfastcache\Util\ArrayObject::current() should either be compatible with Iterator::current(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/devzheng/workspace/psr/vendor/phpfastcache/phpfastcache/lib/Phpfastcache/Util/ArrayObject.php on line 48

Deprecated: Return type of Phpfastcache\Util\ArrayObject::next() should either be compatible with Iterator::next(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/devzheng/workspace/psr/vendor/phpfastcache/phpfastcache/lib/Phpfastcache/Util/ArrayObject.php on line 56

Deprecated: Return type of Phpfastcache\Util\ArrayObject::rewind() should either be compatible with Iterator::rewind(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/devzheng/workspace/psr/vendor/phpfastcache/phpfastcache/lib/Phpfastcache/Util/ArrayObject.php on line 80

Deprecated: Return type of Phpfastcache\Drivers\Memcached\Item::jsonSerialize() should either be compatible with JsonSerializable::jsonSerialize(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/devzheng/workspace/psr/vendor/phpfastcache/phpfastcache/lib/Phpfastcache/Core/Item/ItemExtendedTrait.php on line 438
Best Public Middle Schools in Crystal Lake, IL (2026)

Best Crystal Lake Public Middle Schools (2026)

For the 2026 school year, there are 4 public middle schools serving 2,720 students in Crystal Lake, IL.
The top-ranked public middle schools in Crystal Lake, IL are Prairie Grove Junior High School, Richard F Bernotas Middle School and Hannah Beardsley Middle School. Overall testing rank is based on a school's combined math and reading proficiency test score ranking.
Crystal Lake, IL public middle schools have an average math proficiency score of 24% (versus the Illinois public middle school average of 24%), and reading proficiency score of 29% (versus the 29% statewide average). Middle schools in Crystal Lake have an average ranking of 6/10, which is in the top 50% of Illinois public middle schools.
Minority enrollment is 33% of the student body (majority Hispanic), which is less than the Illinois public middle school average of 61% (majority Hispanic).

Best Public Middle Schools in Crystal Lake, IL (2026)

School
(Math and Reading Proficiency)
Location
Quick Facts
Rank: #11.
Prairie Grove Junior High School
(Math: 22% | Reading: 46%)
Rank:
7/
10
Top 50%
3225 Il Route 176
Crystal Lake, IL 60014
(815) 459-3557
Gr: 5-8 | 357 students Student-teacher ratio: 11:1 Minority enrollment: 20%
Rank: #22.
Richard F Bernotas Middle School
(Math: 28% | Reading: 30%)
Rank:
7/
10
Top 50%
170 N Oak St
Crystal Lake, IL 60014
(815) 459-9210
Gr: 6-8 | 737 students Student-teacher ratio: 11:1 Minority enrollment: 27%
Rank: #33.
Hannah Beardsley Middle School
(Math: 23% | Reading: 26%)
Rank:
6/
10
Top 50%
515 E Crystal Lake Ave
Crystal Lake, IL 60014
(815) 477-5897
Gr: 6-8 | 829 students Student-teacher ratio: 14:1 Minority enrollment: 39%
Rank: #44.
Lundahl Middle School
(Math: 22% | Reading: 25%)
Rank:
6/
10
Top 50%
560 Nash Rd
Crystal Lake, IL 60014
(815) 459-5971
Gr: 6-8 | 797 students Student-teacher ratio: 13:1 Minority enrollment: 39%

Frequently Asked Questions

What are the top-ranked public middle schools in Crystal Lake, IL?
The top-ranked public middle schools in Crystal Lake, IL include Prairie Grove Junior High School, Richard F Bernotas Middle School and Hannah Beardsley Middle School.
How many public middle schools are located in Crystal Lake?
4 public middle schools are located in Crystal Lake.
What is the racial composition of students in Crystal Lake?
Crystal Lake public middle schools minority enrollment is 33% of the student body (majority Hispanic), which is less than the Illinois public middle schools average of 61% (majority Hispanic).
Which public middle schools in Crystal Lake are often viewed compared to one another?

Recent Articles

How Public Schools Train Staff Each Year
How Public Schools Train Staff Each Year
Learn how public schools train staff each year through professional development, safety training, technology instruction, and ongoing educational support.
What Substitute Teachers Experience in Public Schools
What Substitute Teachers Experience in Public Schools
Discover what substitute teachers experience in public schools, including daily responsibilities, challenges, rewards, and their role in student success.
How Teachers Collaborate Across Departments in Public Schools
How Teachers Collaborate Across Departments in Public Schools
Learn how teachers collaborate across departments to improve student outcomes, strengthen instruction, and prepare students for real-world success.

Quick Links