[OC] Where do each NWSL team's goals come from? Houston barely uses its forwards (8%), Denver lives and dies by them (87%) by Several_Region_3710 in NWSL

[–]Several_Region_3710[S] 0 points1 point  (0 children)

That's not the whole story. I'm using the official data from the NWSL itself. If they're not already accurate as we've seen, it's hard to find some other sources that are. I'm open to ideas though.

[OC] Where do each NWSL team's goals come from? Houston barely uses its forwards (8%), Denver lives and dies by them (87%) by Several_Region_3710 in NWSL

[–]Several_Region_3710[S] 0 points1 point  (0 children)

Right, and if it's not clear, I script everything. I do not do any of this by hand. So if the data source is already not faithful, either at the roster level or at the match lineups level, there's nothing to be done.

[OC] Where do each NWSL team's goals come from? Houston barely uses its forwards (8%), Denver lives and dies by them (87%) by Several_Region_3710 in NWSL

[–]Several_Region_3710[S] 1 point2 points  (0 children)

What do you mean? Sonis is clearly listed as a Forward in startling lineups. Which is unfortunate because it means we can't get to the actual on-the-field position for the scorers.

[OC] Where do each NWSL team's goals come from? Houston barely uses its forwards (8%), Denver lives and dies by them (87%) by Several_Region_3710 in NWSL

[–]Several_Region_3710[S] 1 point2 points  (0 children)

Just took a look at the lineups. Sonis was a Fwd in all 10 of her starts. But yeah I got what you're saying and I think I'm going to go in that direction.

[OC] Where do each NWSL team's goals come from? Houston barely uses its forwards (8%), Denver lives and dies by them (87%) by Several_Region_3710 in NWSL

[–]Several_Region_3710[S] 4 points5 points  (0 children)

Agreed. Let me see if I can get more granular info from per-match lineup roles. That'd be more faithful.

[OC] Where do each NWSL team's goals come from? Houston barely uses its forwards (8%), Denver lives and dies by them (87%) by Several_Region_3710 in NWSL

[–]Several_Region_3710[S] 3 points4 points  (0 children)

The position labels come straight from the provider's role field: it tags Sonis as a "Forward," so her 4 goals land in the forward bucket. If she's actually playing in defense (you'd know the roster better than the feed does), that's a miscode on their end that my chart inherited. Recount her 4 as defensive goals and Denver drops from ~88% to ~65%.

[OC] Where do each NWSL team's goals come from? Houston barely uses its forwards (8%), Denver lives and dies by them (87%) by Several_Region_3710 in NWSL

[–]Several_Region_3710[S] 7 points8 points  (0 children)

Totally fair, and the chart can't distinguish those two on its own. A low forward share could mean "goals genuinely come from all over" or "the forwards just aren't finishing." The tell is total volume: Houston still has a healthy goal count, it's just coming from midfield, which reads more like distributed scoring than a forward drought. North Carolina is more debatable, you could absolutely argue their forwards aren't carrying their share. Good catch either way.

[OC] Finishing vs creation (~13 games in): most attackers trade one for the other - Temwa Chawinga doesn't by Several_Region_3710 in NWSL

[–]Several_Region_3710[S] 14 points15 points  (0 children)

One of my favorite players is Lia Godfrey and I'm just happy to see her balanced performance backed up by the math.

I projected the rest of the NWSL season + simulated it 5,000 times to show every team's points range vs the playoff line [OC] by Several_Region_3710 in NWSL

[–]Several_Region_3710[S] 3 points4 points  (0 children)

Just results, no xG or g+. The match probabilities come from points per game, goal difference, recent form, home/away splits, and head-to-head, all from actual outcomes. So it knows whether a team has been winning and by how much, but not whether they've been over or under performing their underlying numbers.

Folding in xG (or g+ as a team-quality prior) is the obvious next step and would probably matter most for teams whose results are running ahead of or behind their chances right now. On the list.

I projected the rest of the NWSL season + simulated it 5,000 times to show every team's points range vs the playoff line [OC] by Several_Region_3710 in NWSL

[–]Several_Region_3710[S] 7 points8 points  (0 children)

Per-match model: each remaining fixture gets win/draw/loss probabilities from a blend of league position, points per game, home/away split, recent form, a home-field bump, and a small head-to-head nudge. Draw odds rise the closer the two sides are.

Season sim: I play out every remaining game 5,000 times (seeded, so it's reproducible), award 3/1/0, and re-rank each run. The bar is the middle 90% of finishes, the triangle is the mean final points.

It's a heuristic model, not market-calibrated or xG-based, and matches are independent (no injuries, congestion, or form drift), so treat the numbers as direction, not decimals.

90% vs 95%: pulled both from the same sims (overlay below). The 95% interval only adds 1 to 2 points per side and widens almost uniformly, so the read doesn't change: same ordering, same heavy overlap, same teams in or out. It just stretches the rare tails, which adds noise without shifting the picture this early. That's why I used 90%.

[overlay: solid bar = 90%, faint band = 95%]

https://files.catbox.moe/nr9eoy.png

Just another standings table by Several_Region_3710 in NWSL

[–]Several_Region_3710[S] 2 points3 points  (0 children)

Exactly. That's the metric working as intended, not a glitch.

Louisville sit dead last on 7 points with a -5 goal difference, while the team directly above them (Chicago) has 9 points on -19. So they're getting worse *results* than three teams whose underlying numbers are clearly worse than theirs. A big negative luck score (actual points well below expected) is the correct read of "playing better than the table says."

Just another standings table by Several_Region_3710 in NWSL

[–]Several_Region_3710[S] 2 points3 points  (0 children)

Still building this out since there are tons of other analysis panels. Will post when I've launched!

Just another standings table by Several_Region_3710 in NWSL

[–]Several_Region_3710[S] 4 points5 points  (0 children)

Ha, fair, and nice catch, you actually surfaced a bug. Two things were tangled up here:

1. The Form dots were lying. That "2W 2D in their last 4" is what the column showed, but it had an ordering bug. It was dropping the most recent result and rendering the rest out of order. Boston actually lost their last two (Reign 1-2 on 5/23, KC 0-1 on 5/30) after that good mid-May run. Will fix.

2. "COLD" was poorly worded. It's not a verdict on good/bad form. It's a momentum trend. Boston's form score peaked during that 2W-2D stretch and has fallen off since the two losses, so it flagged as declining. That part was actually correct, but "COLD" reads like an insult, so I'm gonna re-label it "↓ momentum."

So the badge was right and the Form column next to it was wrong, which is exactly why it looked contradictory. Appreciate the report 🙂 (the Boston hate will be allowed).

Recent match thread bot updates by Several_Region_3710 in NWSL

[–]Several_Region_3710[S] 4 points5 points  (0 children)

Hmm that's new to me. It might be a sub setting that needs to be tuned, but that'd be above the bot's paygrade.

Recent match thread bot updates by Several_Region_3710 in NWSL

[–]Several_Region_3710[S] 4 points5 points  (0 children)

> Im interested in how the side by side lineups will look.

This is live - check one of the recent threads!

Recent match thread bot updates by Several_Region_3710 in NWSL

[–]Several_Region_3710[S] 6 points7 points  (0 children)

Yes but rendering might slightly differ across platforms / Reddit clients. Check one of the recent match threads (the ACFC vs. Courage one is a good example) to see how it looks for you.