FTCScout Season 2: What's New

By Daniel James on October 15, 2023

This offseason we rewrote FTCScout from the ground up. In the process we made many improvements, fixed lots of bugs, and added cool new features. Here is a fairly exhaustive list of what's changed.

New Features

  • Center Stage!: We now have the 2023-2024 season Center Stage!
  • Dark Mode!: FTCScout is the first FTC website with dark mode. Enable it by clicking the moon icon in the top right. Your preference will be remembered and your operating system preference respected. Let us know if there are any dark mode visual bugs or things that don't look great.
  • Matches Update Without Refresh: If you are viewing the event page for a live event you no longer need to refresh the page to see if new matches have been added. The matches will be updated automatically as soon as FTCScout has them.
  • Vote for the best team name: We are running a competition to see which team has the best name. On the home screen you will see two random teams. Vote for your favorite name by clicking it. Once we have enough votes we will write a blog post about the winners.
  • Quick Stats: On the page for individual teams you will now see a "Quick Stats" section. This includes the team's best OPR for total points, auto points, teleop points, and endgame points. It also shows you the team's rank and percentile among all teams in each of those categories.
  • REST API: We hear you. The GraphQL API is too complicated for quick queries. That's why we added a simple REST API for getting data about matches and events. You can read about it here. Note: If you are currently using the GraphQL API a small number of fields have changed names.


  • Numerous Visual Improvements: The visual style of the site has been slightly reworked.
    • No more shadows on cards throughout the website.
    • Larger font sizes on mobile.
    • More compact layouts. Less wasted whitespace.
    • Nicer looking buttons, dropdown menus, and text boxes.
    • The filter dialog looks significantly better.
    • The header on stat pages now sticks to the top of the screen when you scroll.
    • Team names aren't too large on stat tables and can still be seen on mobile.
    • The list of related events uses just the name of the division.
    • The awards page uses a two column layout and division awards are named correctly.
    • Socials links in the sidebar look nicer.
    • And more…
  • Searchbar Rework: The searchbar in the top right of the screen has been reworked. It now loads all data immediately so future searches are instant. You can use the hotkey '/' to start a search. We've also switched to a custom search algorithm developed specifically for FTCScout. Let us know hot it works!
  • Records and Custom Events: Events with modified rules are no longer included in the season records page or in the world record on the home page. The home page world record also no longer includes offseason events.
  • Rank Only Best Results: You can now choose to only rank the best result by each team on the season records page. This is enabled by default.
  • Team and Events Pages: The team and event pages have been redone to be much more useful. We can now recommend using the events page to find events. These pages also now use the custom algorithm the search bar uses.
  • Livestream URLs: If an event lists a livestream url it is now displayed on the event page.
  • Backend Improvements: The backend of the website has been redone so that all the information needed to define a season is located in a single file. This will make it much quicker to add future seasons.
  • Performance Improvements: Certain actions are now much faster. For instance season records queries and search queries.

Bug Fixes

  • Previously the teams for an event wouldn't show up until the day of the event. Now teams should show up as soon as the event publishes their team list.
  • OPR was missing from the bottom bar when focusing a team at an event.
  • Going to a team's page from an event from a previous season would take you to the wrong season.
  • Match played times are now correct.
  • Skystone tiebreaker points are calculated correctly.
  • You can now scroll the page immediately upon loading instead of having to click something first.
  • Typing in the searchbar before the page had finished loading would break it.
  • Fixed a crash in the cone visualization.
  • Fixed data being unnecessarily loaded on first load of the site.

As always we appreciate any feedback, bug reports, or suggestions you might have. Please email us or contact a dev on discord.

If you have any suggestions for topics you would like us to cover email us at [email protected].

Circuitous Circuits

By Daniel James on March 10, 2023

FTCScout recently started tracking the exact positions of all cones scored in every Power Play match which means I now have extra data to analyze for Scouting Reports!

The question that I was most interested in is what is the longest circuit scored this season. The answer is this match where the blue alliance scored a circuit spanning nine junctions and terminals. Interestingly the red alliance also scored a circuit in this match. A rare double circuit, an event that has only occurred 79 times (just 3% of matches!).

Red Alliance Blue Alliance
143 - 101
19926 Bago Bots 7841 Ballen Pretzels 2 19686 Cedar Bots 2 8807 Molten Sprockets
A 3D visualization of the aforementioned match. Blue has a long winding circuit while red has one that crosses the field diagonally. To see an interactive version of this visualization click the match score above.

Let’s also do some more interesting circuit facts.

57 alliances have scored a circuit using the minimum number of cones possible (six). See the list here.

Two matches are tied for the greatest cone differential while still scoring a circuit but this one from New Jersey is my favorite because it was also done using the minimum number of cones. The blue alliance got out-coned 20 to 6 but still managed to score a circuit. (They also got destroyed 163 to 70 but they made it into a Scouting Report and isn’t that all that really matters?).

Red Alliance Blue Alliance
163 - 70
13103 Ironmen Omega 247 Reboot 15715 Crusader Robotics 13105 Ironmen Omicron
A 3D visualization of the aforementioned match. Blue has scored a circuit with only six cones while red has scored 20 with 9 on the closest high junction. To see an interactive version of this visualization click the match score above.

That’s all for now. Thanks for reading!

If you have any suggestions for topics you would like us to cover email us at [email protected].

How To Tie a Tie

By Jonah Reinis on February 20, 2023

After much waiting, the Scouting Report hath returned.

I and the rest of the FTCScout team (just Daniel) are sorry for the lack of Scouting Reports over the past few weeks. Rest assured that we will resume regular updates starting this week. So a few weeks ago, my team (completely shameless plug), had our tournament qualifier. The top 7 teams in advancement order in this event move on to SoCal Regionals. We were WA2. Here’s the thing, after a few picks that weren't based off of OPR, the captains began picking teams off of rank. If we were one rank higher or lower we would not have been picked by the Winning Alliance (who probably would’ve won anyways, Samotech is the best in our region.)

Red Alliance Blue Alliance
115 - 115
22740 Bot Bot 22342 STAMPEDE MACHINES 16321 X Drive 9220 Rancho Rebel Robotics

This is an uninteresting story so far.

In this event, we had a draw. If we had not had that draw, we would not have been on the winning alliance.

To curtail this long-winded introduction: this Scouting Report will be about draws.

The team with the most amount of draws is a six way tie between 22170, 22744, 22713, 21338 , 22852, and 22709, with 4 draws each. These teams are all in the same league. A league which had a suspicious scrimmage with three 0-0 ties. These teams have a lot of draws, but that isn’t very hard to do when most of them are 0-0.

We’re gonna look at teams with the most draws, barring matches with 0-0 outcomes. Team 22261 and 10098 both had 3 draws this season, which is a lot. Not even very low scoring draws either. All of their draws are over 70 points. As a side note, the highest scoring match that was a draw was this one .

Red Alliance Blue Alliance
210 - 210
17483 Blackout 11260 Up-A-Creek Robotics 20771 Bearbotics Sigma 17969 MECH 11308 YISE 21430 BroomBots

The team with the most draws, barring 0-0 matches and only matches with penalties is just a massive 11 way tie. Some familiar teams show up. Matches in question.

Ties are pretty uncommon to say the least. The events with the most ties are 2022 TX-W&P Lubbock-A League Meet #1, 2022 MT Butte Qualifier, and 2023 CO Southwest Metro Qualifier, each with three ties. This is ignoring 0-0 ties, with 0-0 ties it's still three but with a few more events.

If you have any suggestions for topics you would like us to cover email us at [email protected].

What’s Up With Power Play?

By Daniel James on November 4, 2022

We are now 8 weeks into the Power Play season and are starting to get a good number of events, so we thought this would be a good time to take a look at some Power Play stats. So far 45 events have published their results, 694 matches have been played, and 1893 teams have signed up for or already participated in events.

The overall (no penalties (don’t get me started on penalties being added to the other alliance it makes me crazy)) record is 168 (+30 penalty points) by 9785 Cronos and 12995 Monkey Wrench Robotics at the 2022 GA Douglasville Meet 1.

Red Alliance Blue Alliance
35 - 198
14750 ATOM 20172 Prometheus 9785 Cronos 12995 Monkey Wrench Robotics

The records for autonomous, teleop, and endgame are 55, 108, and 69 respectively. That means that we know at bare minimum a 232 point match is possible. Of course we expect these scores to go way up as the season progresses.

Due to the relative simplicity of the game this year many think that strategy will be a critical deciding factor. One of the biggest elements of strategy is whether it is worth attempting to complete a circuit. So far only 87 of the 694 matches have had circuits completed. (That's 12.5%.) This suggests that it is rather hard to complete a circuit. On the other hand it really pays off. Teams that completed circuits went a staggering 85 - 3. (Astute readers will notice this doesn’t add up to 87. There is one match where both alliances completed circuits.) Of these three losses one was from the double circuit match, a second was lost only because of penalties, and the third because the opposing alliance completed a rare double team signal sleeve navigation (a feat accomplished only 3% of the time). Of course completing a circuit correlates with being a better team so this may be correlation and not causation but it is still a striking statistic.

It also seems like it might be worth going after junction ownership even if it doesn’t get you all the way to a circuit. Looking just at matches where an alliance controlled more junctions than their opponents but didn’t get a circuit the team with more junctions went 434 - 85. Again we have to remember that correlation is not causation but these are very interesting statistics.

That’s all for now. We will keep you updated with more stats throughout the Power Play season.

If you have any suggestions for topics you would like us to cover email us at [email protected].

Making Up Statistics

By Jonah Reinis on October 30, 2022

A wise man once said “OPR is the den of foolish robotics teams." I say we build a city of fools.

There’s a lot of truth in these words as OPR, Offensive Power Rating is kind of a statistic we, FIRST, made up. It doesn’t completely measure how good a team is on its own. Especially in years with remote events, OPR becomes less and less of the force it once was. The biggest flaw with OPR are the inconsistent teams. For example, take Team A that scores poorly in all their matches except one where they do exceptionally well, and Team B that does average in all of their matches. The boost in OPR from that match that team B receives will be higher than Team A’s, even though Team A may have contributed more in that match.

For all its flaws, OPR still does a decent job at approximating a team’s performance. However, in the spirit of America’s Pastime, I’d like to introduce some pitches for new statistics we could use in FTC, to show a different perspective. Oh boy do I love making up numbers.

Average Domination (AD): Average Domination is the statistic found by dividing your team’s average by the event’s average, simple enough. The team with the highest AD (not including remote events, refer to the previous report) is Team 16439, AlphaGo , at the VA Norfolk Qualifier 1. At this event, AlphaGo had an AD of ~2.8 meaning that they did about 3 times better than the average team at that event.

League Domination (LD): League Domination is the statistic found by dividing your team’s OPR by your team’s average at any given event. This statistic both shows how lucky you are in terms of teammates, but also how you compare to the rest of your league (again not including remote events). For example an LD of 60% means that you did on average 60% of the work in every alliance you were in. Interestingly enough, at OK Newcastle , Team 11344 - Merrit Oilers had an LD of over 100%, 106% to be exact. When I saw this I thought my query must’ve been wrong or something, but upon checking their event you can actually see that their average was lower than their OPR. Something else of note is that AlphaGo ranks 7 on this list, which I guess makes sense.

These are just some statistics I thought were interesting. Really you could apply this idea of “domination” to anywhere. Like Regional Domination, or Total Event Domination, or even Auto Freight Point Domination.

We apologize for the delayed report this week, college applications exist and we appreciate your patience. I look forward to seeing you all next week with our first Power Play Scouting report.

If you have any suggestions for topics you would like us to cover email us at [email protected].

Mid, MID, MID!

By Jonah Reinis on October 21, 2022

I can remember checking ftcstats.org nearly every day to see if someone topped our 1st place OPR Los Angeles record (which held until the end of January). This is because we, as humans, tend to value extremes more than regular ones. That's why this scouting report is dedicated to our unsung heroes: the average.

So there’s a few forms of average and a few different teams that could fit that criteria. Before we really dive into this I want to outline a few rules:

  1. A team needs to have a low standard deviation around their average score. An inconsistent team isn’t an average one.
  2. A team has to have a certain amount of matches, we’ll say a minimum of 20. It’s easy to get a low standard deviation without a substantial sample size.
  3. Remote events won’t be counted at all. This is because remote events aren’t really indicative of a team's strength.
  4. No stats from funky events will be calculated. This one is more subjective, but for example if your event had weird scheduling issues, or if there was a team (there always is) which went around an event scoring alliances -150 in penalty points.

Our average score over all non-remote matches is 97.8. Now that we have our rules and averages we can get to finding some average teams. Yowzas, it seems like Team 11337, Robonauts, scored a daring 97.75 average over 28 matches. With a low enough standard deviation for us to count it. To be fair, Team 9881, Golden Gears, scored an average of 89 points over 33 matches, which is the closest to the total median (89) score of matches in FTC. I guess not all battles have one winner, so at FTCScout we want to congratulate both Golden Gears and Robonauts on their terrific performances this past year. Truly the teams of all time.

Now this is cool and all, but personally it doesn’t satisfy my exceptionally average hunger . We know what teams are average, but what about the average zone. A place in which one can't help but fit in with one's adjacent FTC brethren. What I’m talking about, of course, is the most average region. Our two regions, with average closest to the median, and average closest to the average are as follows. Aptly from the Midwest, I present to you: North Dakota at 97 points on average (technically Colorado is a little closer to the average at 97.2 but Colorado had a substantially higher standard deviation, and we like that the most mid region is in the midwest). Our other region is South Texas with an average score of 88.5. Let's give it up for our two regions!

The main takeaway from this blog is that the true average is the friends we’ve made along the way. Unless your friend is from North Dakota, in that case they’re the true average.

If you have any suggestions for topics you would like us to cover email us at [email protected].

The Search for the Worst Surrogacy

By Daniel James on October 14, 2022

When the number of teams at an FTC doesn’t allow every team to play exactly five matches and at the same time have all matches be full the match scheduler will make some teams play an extra sixth match as a surrogate. These matches occur near the middle of the tournament (both in the match schedule and for the teams involved).

Since the number of surrogates required in an event is equal to #Teams mod 4 we would expect about 75% of events to contain surrogates. That is indeed what we see. 389 / 526 relevant events (74%) contain surrogates. There are however two events where the match scheduler seems to have gone haywire. At the 2022 VA Harrisonburg Qualifier 1 and the 2022 VA Alexandria Qualifier 3 surrogates where scheduled despite the number of teams being a multiple of four. Harrisonburg contains 16 surrogates and Alexandria contains 12! (VA Alexandria Qualifier 3 is one of the weirdest events ever. It has 12 surrogates, 16 DQs, a tie, and the second lowest numbered still active Team #7 Tactical Sheep).

One question that I’ve often wondered about surrogates is: do alliances with surrogates perform worse? To answer this question we can compare the expected score (the sum of the two alliance member’s OPRs) to the actual score. On average these two are equal (that is the definition of OPR) but is the same true in surrogate matches? Let’s find out!

There were 1049 alliances that contained surrogates last year. Of those alliances, drumroll please…, 504 scored worse than expected! That means that teams perform just at their average in surrogate matches. Gracious professionalism! What about when both alliance members are surrogates? There were 67 such alliances and 30 of them performed worse than average. It seems like teams perform the same regardless of if they are a surrogate or not.

This investigation has brought another question to my mind. What is the biggest overperformance in a surrogate match? Who got really unlucky and their best match was when they were a surrogate? Let's find out.

To do this we will find the biggest difference between a team’s average score and their score in surrogate. Our unlucky winner is: Team #20394 Mustangs2.0 . The Mustangs were averaging just 89 points a match at the 2022 TX-Houston South-West League Tournament when they pulled in by far their largest score (and the second best score of the day) with a 244 in Q-7 with Team #14503 Robo Sapiens.

Red Alliance Blue Alliance
244 - 97
20394* Mustangs2.0 14503 Robo Sapiens 12364 KNIGHTRON 16685 Logos Lions The Mane Show
* Surrogate

Unfortunately for them they were a surrogate. If they had gotten to count the match instead of one of their average scores they would have gained 155 RP and gone from 7th place to 3rd making them an alliance captain! As is, they didn’t even get to compete in the playoffs. Sorry 20394! That’s gotta sting.

If you have any suggestions for topics you would like us to cover email us at [email protected].