The major difference is from that SJP team, both running backs, their best WR/CB and their left tackle are all playing in the NFL. Their whole secondary went to FBS programs. They had three Division I defensive lineman. There were eleven FBS/FCS guys in the SJP lineup - Rutgers, Virginia, Georgia, Penn State, Princeton, Princeton, Michigan, Colgate, Penn State, Delaware, Colgate, Temple. The Reid/Runyon/Zaccheus senior trio is one of the best in PIAA history, and none of them were the best player on the team thanks to D'Andre Swift.
Yes, both teams had three losses, but SJP lost to national programs St. Ignacio’s (Ohio), Don Bosco Prep (NJ) and St. Joseph’s Regional (NJ). They also went on the road and beat Mount Carmel (Chicago, IL). Coatesville losses were Downingtown East and Malvern Prep, before the finals loss to North Allegheny. Just not the same schedule, at all.
Coatesville did have great skill guys, but they’re all not quite was SJP had - Daquan Worely (Penn State/Duquesne) vs D’Andre Swift (Georgia/Detroit Lions), Chris Jones (Coastal Carolina) vs John Reid (Penn State/Seattle Seahawks), Dre Boggs (Rutgers) vs Olamade Zacccheus (Virginia/Atlanta Falcons). Even on the offensive line - Coatesville had a big 300 pound left tackle that played at Lafayette. SJP had a big 300 pound left tackle that played at Michigan and plays for the Packers. Tyler Burke, the Coatesville middle linebacker who played at Maryland then Rhode Island, would be the one major spot where Coatesville had an advantage over SJP. On the offensive line, Coatesville had the two big tackles, but also had interior linemen in the 220-230 range, SJP's smallest offensive lineman was 250. The secondary talents at SJP were guys like Jake Strain, who was a multiple time All State selection.
I think that Coatesville team was really good, and in a lot of years could have won a state title. But they're clearly not as good as 2014 SJP.