Hough, the NCHSAA 8A state champion, has taken the coveted No. 1 spot in the final HighSchoolOT statewide Top 25 football rankings for the 2025 season.

The Huskies proved to be untouchable with a dominant run through the 8A playoffs.

7A state champion Grimsley dropped from No. 1 to No. 2, after it had been in the top spot in the previous ten updates.

N.C. Independent Schools Athletic Association Division I state champion Providence Day took the No. 3 spot in the final rankings. Division II champion High Point Christian came in at No. 23.

6A state champion Watauga finished at No. 6 after its perfect season. 5A champion Crest came right behind Watauga at No. 7. 4A champion Reidsville and 3A champion Shelby finished at No. 18 and No. 19, respectively, while 2A champion Tarboro ended at No. 22.

Any school that is a member of a statewide association is eligible for HighSchoolOT rankings.

HSOT has two sets of rankings: a statewide Top 25 and top 15s for each of North Carolina's six area codes. Subscribe to HighSchoolOT's email alerts to be notified about updates.

  • Historical HSOT Rankings & All-State Teams
  • Insider: Classification Power Rankings
  • All Current Area Code Rankings
  • Current 252 Area Code Rankings
  • Current 336 Area Code Rankings
  • Current 704 Area Code Rankings
  • Current 828 Area Code Rankings
  • Current 910 Area Code Rankings
  • Current 919 Area Code Rankings

Bookmark this page, as it will be updated with the new rankings each week. Subscribe to HighSchoolOT's email alerts to be notified about updates.

HighSchoolOT Football Statewide Top 25 (Final)

  1. Hough (14 - 0)
  2. Grimsley (15 - 0)
  3. Providence Day (13 - 0)
  4. West Charlotte (10 - 3)
  5. Weddington (12 - 2)
  6. Watauga (15 - 0)
  7. Crest (13 - 2)
  8. Millbrook (13 - 1)
  9. Hoggard (12 - 1)
  10. Independence (10 - 3)
  11. Myers Park (9 - 3)
  12. Clayton (12 - 3)
  13. West Forsyth (10 - 3)
  14. Northern Guilford (12 - 2)
  15. Mallard Creek (7 - 4)
  16. Reagan (10 - 3)
  17. Mooresville (9 - 3)
  18. Reidsville (13 - 2)
  19. Shelby (13 - 3)
  20. Cardinal Gibbons (12 - 2)
  21. Ashbrook (12 - 1)
  22. Tarboro (15 - 0)
  23. Hickory (12 - 2)
  24. High Point Christian (12 - 0 -0)
  25. Jordan (11 - 1)

  • Historical HSOT Rankings & All-State Teams


Previous Weeks' Rankings

After Regular Season

  • Grimsley (10 - 0)
  • Providence Day (10 - 0)
  • Hough (10 - 0)
  • West Charlotte (8 - 2)
  • Weddington (9 - 1)
  • Millbrook (10 - 0)
  • Mooresville (7 - 2)
  • Cardinal Gibbons (9 - 1)
  • Myers Park (8 - 2)
  • Independence (8 - 2)
  • Hoggard (10 - 0)
  • Watauga (10 - 0)
  • Mallard Creek (7 - 3)
  • Ashbrook (10 - 0)
  • Crest (8 - 2)
  • Jordan (10 - 0)
  • Jacksonville (9 - 0)
  • Hickory (9 - 1)
  • East Lincoln (9 - 1)
  • Rolesville (7 - 3)
  • Clayton (8 - 2)
  • Cleveland (9 - 1)
  • Tarboro (10 - 0)
  • Richmond (8 - 2)
  • Northern Nash (9 - 1)

After Week 10

  1. Grimsley (9 - 0)
  2. Providence Day (9 - 0)
  3. Hough (9 - 0)
  4. West Charlotte (7 - 2)
  5. Weddington (9 - 1)
  6. Millbrook (9 - 0)
  7. Mooresville (7 - 2)
  8. Cleveland (9 - 0)
  9. Cardinal Gibbons (8 - 1)
  10. Myers Park (7 - 2)
  11. Independence (7 - 2)
  12. Hoggard (9 - 0)
  13. Watauga (9 - 0)
  14. Mallard Creek (6 - 3)
  15. Ashbrook (9 - 0)
  16. Crest (7 - 2)
  17. Jordan (9 - 0)
  18. Jacksonville (8 - 0)
  19. Hickory (8 - 1)
  20. East Lincoln (9 - 1)
  21. Tarboro (9 - 0)
  22. Northern Nash (8 - 1)
  23. Brevard (9 - 0)
  24. Rolesville (6 - 3)
  25. Richmond (7 - 2)

After Week 9

  1. Grimsley (8 - 0)
  2. Providence Day (8 - 0)
  3. Hough (8 - 0)
  4. West Charlotte (6 - 2)
  5. Weddington (8 - 1)
  6. Millbrook (8 - 0)
  7. Mooresville (6 - 2)
  8. Cleveland (8 - 0)
  9. Cardinal Gibbons (7 - 1)
  10. Myers Park (7 - 1)
  11. Hoggard (8 - 0 -0)
  12. Independence (6 - 2)
  13. Watauga (8 - 0)
  14. Mallard Creek (5 - 3)
  15. Ashbrook (8 - 0)
  16. Crest (7 - 1)
  17. Jordan (8 - 0)
  18. Jacksonville (7 - 0)
  19. Hickory (8 - 1)
  20. East Lincoln (8 - 1)
  21. Tarboro (8 - 0)
  22. Northern Nash (7 - 1)
  23. Brevard (8 - 0)
  24. Northern Guilford (7 - 1)
  25. Reagan (7 - 1)

After Week 8

  1. Grimsley (7 - 0)
  2. Hough (7 - 0)
  3. Providence Day (7 - 0)
  4. West Charlotte (5 - 2)
  5. Weddington (7 - 1)
  6. Millbrook (7 - 0)
  7. Mallard Creek (5 - 2)
  8. Cardinal Gibbons (6 - 1)
  9. Hoggard (7 - 0)
  10. Myers Park (6 - 1)
  11. Cleveland (7 - 0)
  12. Watauga (7 - 0)
  13. Mooresville (5 - 2)
  14. Ashbrook (7 - 0)
  15. Crest (6 - 1)
  16. Jordan (7 - 0)
  17. East Lincoln (8 - 0)
  18. Jacksonville (6 - 0)
  19. Independence (5 - 2)
  20. Tarboro (7 - 0)
  21. Southeast Raleigh (6 - 2)
  22. Clayton (6 - 2)
  23. Brevard (7 - 0)
  24. Northern Nash (6 - 1)
  25. Northern Guilford (6 - 1)

After Week 7

  1. Grimsley (6 - 0)
  2. Hough (6 - 0)
  3. Providence Day (6 - 0)
  4. West Charlotte (5 - 2)
  5. Weddington (6 - 1)
  6. Millbrook (6 - 0)
  7. Mallard Creek (5 - 2)
  8. Cardinal Gibbons (5 - 1)
  9. Hoggard (6 - 0)
  10. Myers Park (5 - 1)
  11. Cleveland (6 - 0)
  12. Watauga (6 - 0)
  13. Mooresville (4 - 2)
  14. Crest (5 - 1)
  15. Jordan (7 - 0)
  16. Ashbrook (6 - 0)
  17. East Lincoln (7 - 0)
  18. Jacksonville (5 - 0)
  19. Independence (4 - 2)
  20. Garner (5 - 1)
  21. Tarboro (6 - 0)
  22. Southeast Raleigh (5 - 2)
  23. Clayton (5 - 2)
  24. Brevard (6 - 0)
  25. Northern Nash (5 - 1)

After Week 6

  1. Grimsley (5 - 0)
  2. Hough (6 - 0)
  3. Providence Day (6 - 0)
  4. West Charlotte (4 - 2)
  5. Weddington (5 - 1)
  6. Millbrook (5 - 0)
  7. Mallard Creek (4 - 2)
  8. Cardinal Gibbons (4 - 1)
  9. Hoggard (5 - 0)
  10. Myers Park (4 - 1)
  11. Cleveland (5 - 0)
  12. Watauga (5 - 0)
  13. Mooresville (3 - 2)
  14. Crest (4 - 1)
  15. Jordan (6 - 0)
  16. Independence (4 - 1)
  17. Ashbrook (6 - 0)
  18. Leesville Road (4 - 1)
  19. East Lincoln (6 - 0)
  20. South Point (4 - 1)
  21. Garner (4 - 1)
  22. Tarboro (5 - 0)
  23. Freedom (5 - 0)
  24. Brevard (5 - 0)
  25. Clayton (5 - 1)

After Week 5

  1. Grimsley (4 - 0)
  2. Hough (5 - 0)
  3. Providence Day (5 - 0 -0)
  4. West Charlotte (3 - 2)
  5. Mallard Creek (4 - 1)
  6. Weddington (4 - 1)
  7. Millbrook (4 - 0)
  8. Cardinal Gibbons (4 - 1)
  9. Hoggard (4 - 0)
  10. Myers Park (4 - 1)
  11. Cleveland (4 - 0)
  12. Watauga (4 - 0)
  13. Mooresville (3 - 2)
  14. Crest (3 - 1)
  15. Jordan (5 - 0)
  16. Rolesville (2 - 2)
  17. Independence (4 - 1)
  18. Ashbrook (5 - 0)
  19. Leesville Road (3 - 1)
  20. South Point (3 - 1)
  21. Garner (4 - 1)
  22. Tarboro (5 - 0)
  23. Freedom (5 - 0)
  24. East Lincoln (5 - 0)
  25. Brevard (4 - 0)

After Week 4

  1. Grimsley (3 - 0)
  2. Hough (4 - 0)
  3. Providence Day (4 - 0)
  4. Cardinal Gibbons (4 - 0)
  5. West Charlotte (2 - 2)
  6. Mallard Creek (3 - 1)
  7. Weddington (3 - 1)
  8. Millbrook (3 - 0)
  9. Hoggard (4 - 0)
  10. Myers Park (3 - 1)
  11. Cleveland (4 - 0)
  12. Watauga (3 - 0)
  13. Southeast Raleigh (3 - 1)
  14. Crest (3 - 1)
  15. Mooresville (2 - 2)
  16. Jordan (4 - 0)
  17. Rolesville (1 - 2)
  18. Independence (3 - 1)
  19. South Point (3 - 0)
  20. Ashbrook (4 - 0)
  21. Tarboro (4 - 0)
  22. West Forsyth (3 - 1)
  23. Leesville Road (2 - 1)
  24. East Forsyth (3 - 1)
  25. Brevard (3 - 0)

After Week 3

  1. Grimsley (3 - 0)
  2. Hough (3 - 0)
  3. West Charlotte (1 - 2)
  4. Providence Day (3 - 0)
  5. Cardinal Gibbons (3 - 0)
  6. Myers Park (3 - 0)
  7. Mallard Creek (2 - 1)
  8. Millbrook (3 - 0)
  9. Hoggard (3 - 0)
  10. Weddington (2 - 1)
  11. Crest (3 - 0)
  12. Cleveland (3 - 0)
  13. Southeast Raleigh (3 - 0)
  14. Watauga (3 - 0)
  15. Mooresville (2 - 1)
  16. Jordan (3 - 0)
  17. Rolesville (1 - 2)
  18. Independence (2 - 1)
  19. South Point (2 - 0)
  20. Ashbrook (3 - 0)
  21. Tarboro (3 - 0)
  22. Leesville Road (2 - 1)
  23. West Forsyth (2 - 1)
  24. Brevard (2 - 0)
  25. East Forsyth (2 - 1)

After Week 2

  1. Grimsley (2 - 0)
  2. West Charlotte (1 - 1)
  3. Hough (2 - 0)
  4. Providence Day (2 - 0)
  5. Cardinal Gibbons (2 - 0)
  6. Myers Park (2 - 0)
  7. Mallard Creek (2 - 0)
  8. Millbrook (2 - 0)
  9. Clayton (2 - 0)
  10. East Forsyth (2 - 0)
  11. Weddington (1 - 1)
  12. Crest (2 - 0)
  13. Ashbrook (2 - 0)
  14. Southeast Raleigh (2 - 0)
  15. Cleveland (2 - 0)
  16. Mooresville (1 - 1)
  17. Watauga (2 - 0)
  18. Hoggard (2 - 0)
  19. Independence (1 - 1)
  20. Richmond (1 - 1)
  21. Charlotte Catholic (2 - 0)
  22. Jordan (2 - 0)
  23. Rolesville (0 - 2)
  24. Tarboro (2 - 0)
  25. Brevard (1 - 0)

After Week 1

  1. Grimsley (1 - 0)
  2. West Charlotte (0 - 1)
  3. Hough (1 - 0)
  4. Weddington (1 - 0)
  5. Cardinal Gibbons (1 - 0)
  6. Providence Day (1 - 0)
  7. Mallard Creek (1 - 0)
  8. Rolesville (0 - 1)
  9. Millbrook (1 - 0)
  10. Independence (1 - 0)
  11. West Forsyth (1 - 0)
  12. Crest (1 - 0)
  13. Clayton (1 - 0)
  14. Hoggard (1 - 0)
  15. Ashbrook (1 - 0)
  16. Mooresville (0 - 1)
  17. Watauga (1 - 0)
  18. Richmond (0 - 1)
  19. East Forsyth (1 - 0)
  20. Southeast Raleigh (1 - 0)
  21. Reagan (1 - 0)
  22. Charlotte Christian (1 - 0)
  23. Monroe (1 - 0)
  24. Tarboro (1 - 0)
  25. Brevard (1 - 0)

Preseason

  1. West Charlotte (13-2)
  2. Grimsley (16-0)
  3. Hough (12-2)
  4. Weddington (13-1)
  5. Cardinal Gibbons (12-2)
  6. Providence Day (9-3)
  7. Rolesville (14-2)
  8. Millbrook (11-2)
  9. Mooresville (11-2)
  10. Independence (10-2)
  11. Richmond (10-3)
  12. Mallard Creek (10-3)
  13. Reagan (6-5)
  14. Crest (10-3)
  15. West Forsyth (8-4)
  16. Reidsville (11-1)
  17. Clayton (10-2)
  18. Jordan (10-3)
  19. Ashbrook (10-3)
  20. Hoggard (12-2)
  21. Seventy-First (15-1)
  22. Hickory (14-1)
  23. Tarboro (14-1)
  24. Monroe (15-0)
  25. Erwin (10-2)

Copyright 2025 by Capitol Broadcasting Company. All rights reserved. This material may not be published, broadcast, rewritten or redistributed.