Vision-Based Skill Ratings (2.0-8.0 DUPR)
Our AI can now analyze a game keying in on over 30 characteristics of each player’s performance. The end result is an overall performance rating on the 2.0-8.0 scale that shows how well each player did that game.
Additionally, we are able to add more depth/dimension to the skill rating with a comprehensive 6-skill rating system that shows a player’s skill over individual games, multiple games, and all time. Here are our first six skill categories we’ll roll out:
Serve: Measures effectiveness in initiating the point through control, placement, depth, and consistency.
Return: Measures ability to counter the serve through depth, speed, and consistency.
Offense: Measures ability to apply pressure, execute attacks, and finish points.
Defense: Measures ability to neutralize attacks, reset play, and maintain rally stability.
Agility: Measures player movement efficiency and ability to maintain optimal positioning—getting to the kitchen and stationary when hitting being key.
Consistency: Measures how effective the player is at winning games and minimizing errors (forced + unforced).
Here is what it will look like on the Trends page (just replace the 50s with a 2.0-8.0 number):

Log in to comment and vote
Comments18
Mike Guiler
Mar 16, 2025
Instead of a DUPR alternative if PB.VISION would either allow us to self-report our DUPR ratings or you could pull our ratings for us then you’d be able to provide these and other metrics in relationship to other similarly skilled players. For instance, perhaps my drop percentages are higher than the average/median of the group while my forehand drives are lower. This would give us the ability to quickly identify areas to focus on and hopefully improve.
Mark Livingston
Feb 16, 2025
Would love to see your proposed rating system incorporate both skill and gameplay demonstration. As a certified teaching pro delivering online video coaching, I’d like to have clients demonstrate shot consistency, quality, and accuracy in addition to their ability to win a certain % of points across 3-4 games (for example). This would help me to identify improvement opportunities and create a clear action plan for clients to advance to the next level of play (e.g., for 3.0-3.5, etc).
This would offer the best from both the IPTPA and DUPR systems. Thanks.
mikearney
May 23, 2025
Work in progress - happy to hear feedback :)
PB Vision Team
Aug 23, 2025
Good news! We’ve completed our V1 model that is really quite accurate. It works well for individual games and we’re seeing ratings coming out within 0.25 of what our DUPR-rated coaches are suggesting a player’s skill is for each game. We’re working to release it to all our users next week along with trends and multi-game video support!
robtucker_pb
Aug 24, 2025
This is fantastic!
Jon Chui
Sep 21, 2025
1) What’s the ETA
2) Do you need any hard-core beta testers? ;)
I coach At the Picklr In Thornton Denver and would love to use this for my students, as well as for me! Thanks!
PB Vision Team
Sep 21, 2025
Hey Jon!
1) The ETA is as soon as possible, looking like Monday or Tuesday.
2) We’ve been using a collection of coaches for ratings that we’ve fed into our models and are working through another batch for correcting them further. I’ll reach out if we need more help sometime. Thanks!
PB Vision Team
Sep 24, 2025
We shipped V1! Plenty of incremental improvements planning in the coming months, but please be sure to leave your feedback and point to any videos you feel are greater than 0.5 different than your performance for the rated game. Right now we’re within 25% of a qualified coach rating for our evaluation videos (which are also subjective!). We predict we can bring it even closer with some updates around what we are tracking in a game and with more coaches providing data for our model. Note that this is not a backwards compatible feature for previous uploads.
PB Vision Team
Feb 16, 2025
We’re planning to launch a V1 of this alongside our Trends feature!
https://roadmap.pb.vision/p/publicprivate-player-profiles-and-trends
Mark Livingston
Mar 6, 2025
This is terrific. Thank you!
Alden Gannon
Mar 10, 2025
I hope shot and hence player quaility takes context into account. That is, the player who puts a shot away is less skilled than their partner who caused the pop-up on the previous play. A serve isn’t good simply because it landed deep, it’s good based on the quality of return that comes back from it. A drop isn’t good simply because it lands in the kitchen, it’s good if the next shot is not attacked, best if it’s popped up.
Looking at your color-coded shots, it appears a rote classification based only on where it lands. Am I right?
A truly AI assessment of a player would be WAY better than DUPR.
PB Vision Team
Mar 10, 2025
Very interesting @Alden Gannon . What do you think about these scenarios though if you take into account the response too much?
I hit a deep, fast serve; the returning player hits a perfect deep return
I hit a deep, fast serve; the returning player hits a poor short return or into the net
I hit a short, slow serve; the returning player hits a perfect deep return
I hit a short, slow serve; the returning player hits a poor short return or into the net
I’d prefer my quality in cases (1) and (2) to be “great” indicating I did all I could do to try to make that returning player have a hard time—regardless of their skill level, luck, wind etc. For example, even a pro could accidentally hit a short, slow serve into the net. Conversely, even a beginner player could manage to somehow hit an amazing return off an amazing serve.
I’d prefer my quality in cases (3) and (4) to be “poor”, even if in the case of (4) the response was poor.
If we based quality purely off of the response shot, I worry we’d be biasing the shot in question on the many unknowns around the response shot.
Alden Gannon
Mar 10, 2025
I’m not saying do away with the absolute measurement (depth of serve), rather make the relative measurement (response to shot based on skill of competition) just as important. Let me reframe your examples.
Even though I saw my opponent standing way back respecting my hard serve, I did it again when a short, soft angled serve would have been an ace. He crushed it. (good serve, low IQ)
I hit my hard deep serve (good) and my skilled opponent (good) or unskilled opponent (neutral) missed the return.
I hit a short slow serve directly at returner (not angled to pull them wide) (bad) and the returner hit a perfect return (bad).
Seeing the returner was sitting on their forehand, I hit a short angled serve to their backhand side (good), drawing them way off the court (good for at least the next 2 shots) and my skilled opponent (good) or weak opponent (neutral) missed the return.
To get the modifier indicating skill of returner, you can simply use their history of absolute measurements or their last 3 games or whatever.
Either way, you still need to deal with the fact that we’re a team. I put away a pop-up (neutral, easiest shot in PB) created by my partner who put an awesome dink on our opponent’s outside foot (great).
Alden Gannon
Mar 11, 2025
Or a simple formula to approximate this. Each shot is worth 0-5 points based on absolute metrics (placement, speed). Perfect 5 means winner, 0 means error. If a shot is awarded < 5 points, the difference is added to the value of the previous shot. So a rally with 20 shots is worth 100 points and the distribution will favor the shots right before bad shots.
So if a pop-up is worth 1, the great dinker gets 8 (4 for the dink and 4 for the pop-up) points and their partner gets 5 with a point-ending smash.
On defense, a smash that is returned could only get 1 point awarding the returner the remaining 4 points on even a weak return (popped right back up).
PB Vision Team
Mar 11, 2025
Great idea, I’m going to capture this approach when we iterate on shot qualities soon. I like that it’s simplistic enough and rewards shots that are handled poorly and penalizes shots that are handled really well. In any individual case it could just be that an amazing shot was handled really well (opponent got lucky) and that we perhaps incorrectly penalize their shot. BUT (1) the penalty wouldn’t be severe and (2) this case is far less frequent anyway—the more likely case is that a great shot isn’t handled well (ex into the net, out, popup, etc.)
PB Vision Team
Mar 11, 2025
Fantastic. I understand this totally now, thank you! So, when we are able to tell the approx skill of the returning player, including agility, general ability to return the ball well, etc. we can use that — along with their position on the court at times of serve — to additionally influence the quality of the serve. It’s what I’m going for with our quality assignments having a (1) execution component and (2) a selection component. The two are both used to influence the overall single quality metric.
https://pbv-public.github.io/insights?s=%2Finsights%2Fgame&p=rallies.shots.quality
What I think will get interesting is when we have enough to “profile” each player to understand the returning players strengths and weaknesses enough to influence how we can score the serving players shot IQ (via their shot’s quality).