We’re just about halfway through the 2018 MLS regular season, so it’s time to hand out midterm grades to all the kids.

As in school, we’re going in alphabetical order.

Atlanta United: A

Atlanta United are atop the Supporters’ Shield standings, they’re threatening a real run at the season-long points total Toronto FC established way back in 2017, they’re threatening a real run at the season-long goals total LA set way back in 1998, and they’ve seamlessly shifted from a “high press all the time” bunch to a more flexible team that can beat you multiple ways.

They’ve also coped with multiple injuries and the offseason departure of Carlos Carmona without skipping a beat. And reinforcements are on the way.

Tata Martino still has the occasional howler (i.e., the final 10 minutes at Dallas last week), but he’s one of the very best coaches in the league and his team plays like it just about every single week.

And here’s the ultimate compliment: Even if they sell Miguel Almiron this window, I still think they’ll be one of the best in MLS.

What they could’ve done better: Get Andrew Carleton more minutes.

Chicago Fire: C+

Back around mid-April I thought the Chicago Fire were going to get an F-. But Veljko Paunovic kept tinkering and tinkering, and the team kept evolving, and they’ve emerged as “pretty decent” over the past six weeks since getting healthy-ish and shifting into a 4-3-3 full-time.

Aleksandar Katai has been one of the more enigmatic players in MLS this season | USA Today Sports Images

Their heads, however, are still below water, and there are questions about the roster (Will the real Aleksandar Katai please stand up?), and the development of most of their young players has been stop-start, and a lot of this still feels really open-ended for a veteran team that was legitimately in the Supporters’ Shield hunt last year.

What they could’ve done better: Addressed their winger issues more thoroughly.

Colorado Rapids: F

The Colorado Rapids offseason overhaul is seven months and many millions of dollars in the rearview. The “Rapids Way” op-ed was penned 11 months ago. What it’s brought is a team off to its worst 18-game record in franchise history, having picked up just 15 points so far.

They’ve scored just 22 goals, which is 21st in the league. Their goal differential is -10, which is 21st in the league. They’ve abandoned any pretense at playing attacking soccer, bunkering into a 5-4-1 and scattering their host of center backs all over the XI over the past month.

None of it has worked. It’s hard to see any direction for this team unless more big moves come.

What they could’ve done better: A lot.

Columbus Crew SC: B-

So Columbus Crew SC got rid of Ola Kamara and Justin Meram, trusting in the system to replace their two top scorers from last year. So far they’re batting .500 as Gyasi Zardes has been a plug-and-play replacement for Kamara (I’d argue he’s been better in 2018 than Kamara was in 2017), but goodness gracious are they missing Meram’s ability to break a game open – or even finish a play off – from the wing.

The system is still generating good shots. And the system is generating better overall defense, both by the numbers and by the eye test, than it ever has before under Gregg Berhalter. But the guys in the system on the wings aren’t high enough quality to turn all of that into the number of wins this group should have.

They’re still comfortably in the playoff picture in the East and will probably stay there unless the worst happens. But that said, they’re in the midst of a brutal stretch of games that doesn’t really end until September 22, so the worst could indeed happen.

What they could’ve done better: Replace Meram with an equal or better goalscorer.

D.C. United: C-

Eleven points has D.C. United dead last in the league, and they only won once in their 12 road games, and it mostly hasn’t been good enough – especially defensively, as they’re giving up more than two goals per game.

Their investments at d-mid, left back and center back have, quite simply, not paid off (though Chris Durkin’s growth has at least mitigated that first issue), and the rotation in goal has not been anywhere near as point-saving as Bill Hamid regularly was. D.C. are always, always vulnerable.

But they’re not dead yet. The attack has been good and is likely to get better with the addition of Wayne Rooney, they actually pass the ball pretty nicely, and when they press teams they’re dangerous as hell. So they’ve got 20 games left to boost their grade.

What they could’ve done better: Defend. Period.

FC Dallas: A-

The 2017 nightmare is mostly past FC Dallas, replaced by a deeper, more competitive and seemingly more resilient team. Whatever was broken in the locker room looks like it’s mostly been fixed, and Oscar Pareja has re-embraced his roots with regard to playing his young players when they earn it. Competition for spots has done this team some good.

But they still lack top-quality finishers, and left back has been a non-trivial problem most of the year, and now they have to rediscover how to generate offense without the recently departed Mauro Diaz.

These are problems that could all tip Dallas’s grade far, far lower for the second half of 2018. For the first half, though ... they’re top of the West, the defense is back to being one of the league’s best, and it just feels like FC Dallas again in a lot of the important ways.

What they could’ve done better: Phased out Maynor Figueroa at LB. He’s not up to playing that spot anymore, and hasn’t been since 2015.

Houston Dynamo: C

The Houston Dynamo built upon last season’s playoff showing, but it's been more of a philosophical and personnel build than an on-field, results-based build. My gut instinct says that they’re willing to absorb any short term pain in search of long-term gain, which is to say: They know they can’t win the type of trophies they want to win if they’re only a counterattacking team. So that means they’re going to try to have the ball more, and use the ball more, and that has left them vulnerable.

Teams have exploited them when they’ve tried to play. It happens, but as long as they make the playoffs and keep the core together, it’s probably worth it.

At the same time, that’s not the only reason they’ve been dropping points. Wilmer Cabrera’s subs have often been regressive, the defense has been soft and the finishing has been sporadic. Any one of those three things doesn’t happen, and they’re probably sitting top four in the West and looking at a B+.

What they could’ve done better: Subs, late-game defense and finishing.

LAFC: A+

Everybody was amazed at Atlanta last year, and with good reason, right? They were ruthless and compelling and so, so good.

Through 18 games, LAFC have been 7 points better than the Five Stripes were, and that’s despite losing three players (Carlos Vela, Marco Ureña and Omar Gaber) to World Cup duty. And despite not even having their third DP arrive yet, and despite not getting their leading goalscorer into the XI until June.

The only thing that’s slowed this group down is when they’ve played without a center forward. In those six games they’re 1-2-3. When Ureña or Adama Diomande starts, they’re 9-2-1. Also, unlike Atlanta last year, they’ve got the depth to make a U.S. Open Cup run and are hosting the Timbers in the quarterfinals on July 18.

They have the highest goals per game in the league, the third-highest goal differential, and nine of their final 16 games are at home. They have a legitimate shot at the Shield/USOC double in their first year of existence.

What they could’ve done better: Had they been able to add Diomande in February instead of May, they might be running away with the West.

LA Galaxy: C

The LA Galaxy have not been good, but they have also not been as bad as that one-month stretch from early April to early May suggested. Good teams ripped the Galaxy apart, which is to be expected given the weakness in this team’s backline. But they’ve generally handled bad teams, are 4-1-3 in their last eight, and have good, dominant wins over RSL and Columbus (both above the playoff line) in their last five.

So it’s a work in progress. I have questions about what the final form will be, and suspect that no matter what it is they won’t be able to go toe-to-toe with the best teams in MLS. But unless Zlatan Ibrahimovic gets hurt, I’m pretty sure they’re going to make the playoffs, and as long as you do that you’ve probably earned yourself a passing grade.

What they could’ve done better: Built the defense. The guys they added over the past 12 months have been subpar, both individually and as a collective.

Minnesota United FC: D

I still like Minnesota United's draft quite a bit, and think that Mason Toye, Carter Manley and Wyatt Omsberg all have good, long futures in this league despite some early struggles. They did well to add Darwin Quintero, who put on a show last week and has generally looked the part of a DP (if not necessarily like one of the league’s very best DPs).

They also tried to add pieces in important places, but there is, apparently, no way to adequately replace either Sam Cronin or Marc Burch, the two veterans whose arrival early in 2017 boosted the club to something approaching respectability. Add in the regression of other key players and a stubborn refusal to structure the team in a way that protects Zone 14, and what you’ve got ... what you’ve got is a team that’s taken a step backward from last season.

If you have a three-year plan, there should be tangible progress in Year 2. They have at least a little of that in terms of adding personnel both young and old, but it’s not showing on the field.

What they could’ve done better: Addressed the need at defensive midfield.

Montreal Impact: C+

It’s the middle of July and the Montreal Impact are above the playoff line on both points and points per game. I did not see that coming.

Granted, they have just finished up the softest part of their schedule, and granted, the road ahead of them looks like it will be considerably tougher than what they just traveled, a stretch in which they’ve won five of six.

But at the end of May, this team had lost eight of nine, all their old players were hurt and all their young players were underperforming. Remi Garde was tossing the whole lot of them under the bus every single weekend. Ignacio Piatti was finally showing his age. The defense was a tire fire.

They could’ve packed it up and died right then and there. They didn’t, and now they’ve given themselves 15 games to hold off the Fire, Union, Orlando, TFC and D.C. That’s a passing grade.

What they could’ve done better: I’m disappointed Garde hasn’t been able to coax more out of Anthony Jackson-Hamel and Raheem Edwards, both of whom seemed to have breakout 2017 performances.

New England Revolution: B+

The New England Revolution did a great job of coming out of the gates, blitzing teams over the first two months of the season and then holding on for dear life since the beginning of May. Brad Friedel understood who his guys were, how to hide their weaknesses and emphasize their strengths, and has, throughout, made them difficult to beat. Even now, as they’re struggling after their hot start, they’re still 3-2-5 in their last 10, and that’s kept them comfortably in fifth place in the East.

Honestly, though, I wouldn’t be shocked if this team really, really, really fell off in the second half of the season as the schedule gets tougher. I don’t think the defense is good enough and I don’t think Matt Turner’s going to continue being the point-save colossus he’s been so far. And come the end of July the schedule gets much more difficult.

But that’s for the future. In terms of what they’ve done to get to the present, I’m impressed as hell – especially by the job Friedel’s done. He deserves the lion’s share of the credit here.

What they could’ve done better: As I said, I don’t think the defense, as it’s constituted, is good enough.

New York City FC: B+

New York City FC are still in the Shield hunt, still play some of the most attractive soccer in the league, still score two goals per game and have shown a measure of flexibility in how they play. They’ve also handled the absence of David Villa – who is maybe finally showing a bit of his age – better than I suspected they would, and they continue to find useful players via the USL. There are so many things to like about this group.

But this was supposed to be the year that they perched atop the league, not the year that they got mixed up in the hunt for it. They haven’t quite done that, and it’s for two reasons:

1. They have no replacement for Yangel Herrera.

2. A malaise settled over this group once it was clear Patrick Vieira was leaving.

That’s a lot for any team to handle, and it says something about NYCFC that they’re still near the top of the league despite the above. But, simply put: They’re not as good as they were at this time last year.

What they could’ve done better: Vieira’s reliance on goal-shy veterans hurt this team at the start of the season.

New York Red Bulls: A-

The New York Red Bulls are basically tied with NYCFC on PPG, just behind Atlanta, and have three games in hand. And they beat the Five Stripes head-to-head back in May, two weeks after crushing NYCFC 4-0. They did the same to Dallas and to Portland, and their CCL run was memorable, if ultimately futile.

At age 33, Bradley Wright-Phillips is having his most complete season, Doyle Writes | USA Today Sports Images

They’re 6-2-2 in their last 10, Bradley Wright-Phillips is playing the best, most well-rounded soccer of his life, Kaku has been the Newcomer of the Year, and both their center backs should be in the USMNT picture. Their 19-year-old, Homegrown d-mid already is.

Kemar Lawrence has been the league’s best left back, and they’ve handled injuries well at right back. They’ve gotten multiple answers in attack from their USL team and academy. They even lost the indestructible Luis Robles for a minute, but got great performances from Ryan Meara.

What’s more, when the rumors about Jesse Marsch started swirling, this team avoided the malaise that claimed NYCFC during the height of the Vieira rumors.

So far, Red Bull only comes in cans. Maybe not this year. At worst, they’re the second-best team in MLS.

What they could’ve done better: Beat teams that bunker against them, both domestically and in continental play.

Orlando City SC: D

When you spend just about everything in the winter and then still have to fire your coach in the summer, it tells you things have gone wrong. And while Jason Kreis was justifiably on the hook for a lot of it, the Orlando City front office (whose scouting appears to have been lacking) and the players (who often and still perform as if they’ve just met each other) both own their fair share of the blame.

Look, I picked the Purple Lions to make the playoffs ahead of the season. They are now five points off the pace and have the league’s worst goal differential. It’s been a disaster.

They did, however, do a nice job of getting some young talent (Chris Mueller’s been very good) and I think, in James O’Connor, they made a good hire to replace Kreis. Their first game under O’Connor wasn’t a great result (4-1 loss at LAFC), but they played really good soccer for 75 minutes against a very tough team before coming apart down the stretch.

What they could’ve done better: Their defensive signings have been uniformly subpar.

Philadelphia Union: C-

I love the way the Union play, and I love the ethos of the technical staff. Jim Curtin deserves a ton of credit for trusting the Homegrown central defensive combo of Auston Trusty and Mark McKenzie, but it’s more than that. He puts out a team with a very good gameplan on both sides of the ball pretty much every single weekend, and it’s usually pretty, and it’s often very effective.

Except in terms of putting the ball in the net. Because the Union have been abysmal in front of goal in 2018.

CJ Sapong and David Accam, both of whom were rewarded with large contracts this offseason, have been the two guiltiest parties. There is almost nothing to say beyond "the inability to finish the chances that are regularly created means that the Union are doomed to mediocrity."

That’s what happened this past weekend as Philly mostly outplayed Atlanta, but then lost 2-0.

What they could’ve done better: In retrospect, they bet on the wrong attackers.

Portland Timbers: A-

Their first five games of the season were awful, but the Portland Timbers have gone 11 unbeaten in the league and 13 overall since then. Giovanni Savarese has simplified everything, stacking defensive midfielders atop defenders and essentially saying, “We’re plenty confident that our three-headed attack of Diego Valeri, Sebastian Blanco and Samuel Armenteros will beat you.”

And they’ve been right to be that confident, obviously. Portland are up to third in the West on PPG and have both games in hand and a home-heavy schedule the rest of the way. They could’ve combusted at the end of March, but instead they figured out what was wrong and fixed it.

There’s still not a ton to say about them beyond that. Good solid defense, excellent goalkeeping plus an MVP-caliber counterattack just about sums it up.

What they could’ve done better: Added a backup for Diego Chara. If he gets hurt again we all know what happens to Portland’s season.

Real Salt Lake: C+

I have almost no idea of how to properly rate this team. Real Salt Lake played the second half of last year at nearly a Shield-winning pace, collecting just about 2 ppg and falling just short of the playoffs. And then they brought back the bulk of that group, plus some high-priced imports, and by all rights it felt like they should’ve taken a step forward.

They haven’t, though. RSL have taken some filthy beatings, the imports have pretty much all fallen short of expectations, and they are playing at nowhere near a Shield-winning pace.

But ... they’re fourth in the West. And while I question some of Mike Petke’s tactical decisions, he’s clearly got his guys competing like mad for spots in the XI every single week, and isn’t afraid to bench a veteran (or a lot of veterans) when they get beat out by a kid. And those kids keep producing, both in defense and attack.

Again: This season’s shape is nothing like what I expected from RSL. But here they are.

What they could’ve done better: Petke could’ve let Danny Acosta out of the doghouse earlier, which sure would’ve saved them some points.

San Jose Earthquakes: F

Danny Hoesen has been a bright spot, but that’s about it. By and large, the guys brought in over the past 18 months have have underperformed, the midfield lacks any sort of structure, the defense is gappy and there’s no left back.

I don’t understand much about how most of these signings were scouted and signed. I don’t understand why, in what is essentially a wasted year, head coach Mikael Stahre is doubling- and tripling-down on veterans who have shown they're not good enough instead of playing – and, presumably, coaching up – the promising kids on this roster.

I don’t understand what San Jose’s on-field identity is supposed to be (I defy you to tell me what their playing style is). The few things they got right last year – they were playing some fun, if defensively naive soccer under Chris Leitch for a hot minute, remember – have been swept under the carpet in favor of ... nothing much yet.

What they could’ve done better: Signed a left back. It's a start.

Seattle Sounders: D

I get it: The core of this Seattle Sounders team, the group that’s been to two straight MLS Cups and has so many guys with so many big moments in Rave Green, deserved one last year to give it a go. It was maybe a sentimental choice from the powers that be, but to be completely honest it’s the same exact choice I’d have made if I’d been in the Seattle front office’s shoes. These guys earned one last shot at one last trophy.

They’re sure not playing like a team capable of getting their hands on silverware, though. Seattle have been OK defensively and unwatchably bad in attack, with only 15 goals through 17 games – three behind Josef Martinez’s Golden Boot pace. The attackers have showed their age, the midfielders have showed their age, and the defenders have showed their age. Keeping the window open for this season cost them the season.

The good news – the reason they’re not getting an F – is because they drafted well, they signed another good Homegrown, and they signed a DP striker I like in Raul Ruidiaz. So while the on-field product has been miserable, there’s reason to think a new era will be starting as soon as next year.

What they could’ve done better: Lots of things, but one that concerns me a bunch is the lack of development from their younger players.

Sporting KC: B

Sporting Kansas City are more defensively frail than they’ve been at any point in recent memory, and they’re officially entering what looks like their annual summertime swoon, and they’ve battled a bunch of injuries throughout the XI, and there are huge chunks of time in which they just look much, much easier to play against than any SKC team of recent vintage.

Daniel Salloi, left, Wan Kuzain Wan Kumal, right, and Jaylin Lindsey, second from right, are all part of Sporting Kansas City's promising corps of young players. | USA Today Sports Images

But they’re still top three in the West, and while the defense isn’t as good as it has been it’s still pretty good, and Peter Vermes has done a nice job of bringing along a trio of Homegrowns (Daniel Salloi, Jaylin Lindsey and Wan Kuzain Wan Kumal) at crucial spots, so the hope is that this team has more depth and more answers for the second half of the season than SKC teams typically do.

If they go out and get the right No. 9 – and yes, they should absolutely go out and try to get the right No. 9 – this month, they can boost their full-year grade considerably.

What they could’ve done better: I still have no idea how Yohan Croizet is a DP, either by the eye test or via anything from his past performances. If they’d spent that spot on a goalscorer instead ...

Toronto FC: F

What happened to the proud group of competitors who played every single game in 2017, and then in the 2018 CCL, like it was their last? I understand Toronto FC have had more injuries than anyone – they’re still missing literally half their starting field players (Jozy Altidore, Victor Vazquez, Chris Mavinga, Drew Moor, Auro) – and that there’s a championship hangover and a CCL hangover and that they’ve played and traveled to the point of exhaustion and blah blah blah but come on.

There is no way the team that beat Tigres and America over two legs, and that won a game (if not a series) in Guadalajara should be this soft and this bad. They’ll need a miracle second-half surge to make it to the playoffs.

That, to me, is more shocking than Dallas’s collapse last season.

What they could’ve done better: They did not spent their TAM well. Gregory Van der Wiel has been pretty good, but Ager Aketxe was not, and he's now heading back to Spain on loan.

Vancouver Whitecaps FC: C+

Signing Kei Kamara was the perfect move to tie together an attack that had tried (and mostly failed) to be very British over the years. With him as a target forward – 8g/3a in 1181 minutes – the Vancouver Whitecaps now have an outlet that absolves them from needing any real possession in midfield, as well as a guy who can get out and run with all the speedsters they’ve got on the break.

It’s worked really, really well in attack, and for the first time in a long time the ‘Caps are often both dangerous and fun. It’s also been fun to watch 17-year-old wunderkind Alphonso Davies develop into a key part of that attack, and ensconce himself among the league leaders in assists (his development alone boosted the overall grade from C- to C+).

They just can’t defend worth a damn anymore, though. They’ve conceded 37 goals, which is second-worst in MLS, and while they’re just above the playoff line on total points they’re actually eighth in the West on PPG.

If they figure that out they’ll get a much higher grade in the second half of the year, and another trip to the postseason.

What they could’ve done better: It’s pretty apparent the new guys at CB and GK are performing at a lower level than their predecessors.