Opponent profiles: track the players you face in poker
You recognise the name before you even look at his cards. "Him again, third time this week, he calls everything." The problem is that this memory lives in your head, fades between sessions, and never surfaces at the moment you actually need it, the one where you have ten seconds to decide.
GrindLab has a Players page that does this work for you: one profile per opponent, built entirely from the hands you have personally played against him. You check it, set a TYPE, open the detail, and the next time you face him you already know who you're dealing with.
The Players page: an all-time aggregate, not a scan
The Players page shows one row per opponent you have actually faced, aggregated across your full history. Nothing is recomputed on the fly each time you open it: it's an all-time aggregate that updates as you import more hands.
Two ergonomics worth knowing:
- List or grid. List view is compact, built to scan a lot of names at once. Grid view surfaces each player's TYPE pill, handy for visually spotting your fish and your nits ahead of an upcoming session.
- Keyset (cursor) pagination. Whether you've crossed fifty opponents or five thousand, scrolling loads the next batch by cursor, not by offset. You never pay the price of a growing history.
The result: a list you can actually browse, not a table that slows down over time.
The TYPE pill: your read, locked in and editable
Under each opponent's name, a pill shows their player type: TAG, LAG, fish, nit, reg, or any other label you choose. It's not an automatically computed stat, it's your diagnosis, set manually and saved.
Why editable rather than automatic? Because typing a player stays a judgement call, not a formula. Two opponents can both show a VPIP of 30 for entirely different reasons (one varies his game by table, the other is mechanically loose). The pill lets you decide, and change your mind the day you sharpen your read or the player's game evolves.
The typical profiles, and how to exploit each
Before setting a TYPE, it helps to know what each label actually means in terms of preflop frequencies and adjustment. Here are the classic benchmarks:
| Type | VPIP | VPIP-PFR gap | Profile | Exploit |
|---|---|---|---|---|
| Nit | < 18 | small | Ultra-tight range, plays little but strong | Steal his blinds wide, fold to his rare aggression |
| TAG | 18-25 | tight (3-6 points) | Tight-aggressive, healthy and balanced ranges | Little easy exploit, play solid and look for small edges |
| LAG | 25-35 | tight but high 3-Bet | Loose-aggressive, wide and applies pressure | Call wider in position, don't 4-bet-bluff blindly |
| Fish / loose-passive | > 35 | wide (15+ points) | Enters a lot of pots, rarely raises | Value-bet thinner, cut your bluffs, he pays |
| Maniac | very high | very wide (VPIP and PFR both high) | Hyper-aggressive on every street | Let him bluff, tighten your call-down range to value |
These benchmarks line up exactly with what the Lab's villain tracker already shows seat by seat during a hand review: the TYPE pill on the opponent profile, meanwhile, banks that read over time so you don't have to redo it on every hand.
The detail panel: opening the full profile
Clicking an opponent opens a side panel with four blocks, from the most general to the most granular.
Header and summary strip
The pseudo, the editable TYPE pill, and a summary strip that gives you immediate context: this is the entry point of the profile, what you glance at in one second before digging deeper.
VPIP by position
A small bar chart that breaks down the opponent's VPIP position by position. It's the first thing to check after the global VPIP: a player showing 35 in early position and 35 on the button has no positional sense, a real exploitable leak. A normal player climbs progressively from UTG toward the button.
Hands played: the combo grid
A range-style grid showing the combos you've actually seen him play, with an occurrence count and a colour intensity proportional to it. This isn't a theoretical estimate, it's concrete: the most intense cells are the hands he's shown down or pushed most often against you. If you want to see how this combo-level read connects to combinatorics, the article on poker combinatorics breaks down the mechanics behind these cells.
Showdown composition bar
A bar that splits what the opponent has shown down: strong value, marginal hands, bluffs that didn't get there. It's the most actionable summary on the profile: if his bar skews heavily toward value, you know his aggressive lines aren't built to bluff.
Read the opponent from their stat line
The point that matters: it's your data, and yours alone
One thing needs to be crystal clear, because the question comes up often: the opponent profile is not a shared datamining database. Nothing shown here comes from another player, from community scraping, or from a third-party feed bought somewhere.
Every number, every cell in the combo grid, every showdown bar is computed only from the hands you personally played against that opponent. If you've crossed him twelve times in a year, the profile reflects those twelve hands, not the thousand others he's played elsewhere against other players.
This distinction matters, both practically and legally. Practically, because it means your opponent profile is honest: it never claims to know more than what you actually lived through. Legally, because large-scale community datamining is banned by nearly every room, while your own hand history is yours to keep without restriction. GrindLab builds on what you're entitled to keep, much like the live HUD that also only shows stats pulled from your own tables.
It also means the profile can never over-promise. A player who has played a million hands online across a dozen sites might look completely unfamiliar to your opponent profile if you've only crossed him twice, and that's the correct behaviour: the fiche never fills in gaps with assumptions borrowed from elsewhere. What you see is exactly the size of your own experience against him, no more, no less. That honesty is part of what makes the read trustworthy at the table.
Calculate hand equity, pot odds, and compare ranges with GrindLab's free equity engine
Try it free →How to type an opponent without getting it wrong
Three habits before locking in a TYPE pill:
- Check the hand count first. A 45 VPIP over eight hands means nothing. The same number over three hundred hands is a solid leak. The profile always shows the sample, read it before you conclude.
- Cross VPIP-by-position with the VPIP-PFR gap. VPIP alone roughly sorts loose from tight. The gap with PFR adds the aggressive/passive dimension, and the position breakdown reveals whether the player has a real positional strategy or just plays flat.
- Let the TYPE move. A player who was a fish six months ago may have improved. A TAG can tilt one session and turn temporarily loose. The pill isn't carved in stone, it re-adjusts.
Once the TYPE is set, the real value shows up when you translate it into a decision. That's the natural bridge to GTO vs exploitative play: the opponent profile gives you exactly the raw material to step away from a balanced default strategy and play against this specific player, not a theoretical one.
Fitting into the rest of the tracker
The opponent profile doesn't live in isolation. It complements two other pieces of the GrindLab tracker that share the same data philosophy: only your own hands, nothing external.
- The Lab's villain tracker shows VPIP, PFR and 3-Bet right at the seat during a hand review, with a strict time filter (only hands played before the analysed spot). It's the "at decision time" version of the same data.
- The live HUD informs you while you play, table by table.
- Your own Stats page works as a mirror: it shows your own frequencies, while the opponent profile shows everyone else's.
Together these pieces form what the GrindLab tracker has been aiming at from the start: connecting what you observe at the table to what you can analyse afterward, without ever leaving the same product.
Conclusion
A player's memory of his opponents is one of the most under-exploited edges in online poker: you cross the same names dozens of times, but without a tool, that information leaks away between sessions. GrindLab's Players page banks it: an all-time row per opponent, a TYPE pill you set and adjust, a detail panel that goes from VPIP by position down to the combos you've actually seen him play.
The point to keep in mind: all of it comes from your own hands, scoped to your account. No shared database, no external datamining, just your personal read, built honestly.
Open the Players page, find an opponent you cross regularly, set his TYPE, and check his profile before your next session against him. Then go check a recent session against him in My Hands, or bring the profile straight into the Lab to put a number on the adjustment you're planning.