The frame data pages are the one part of this site that isn't about you. No imported match history, no win rates — just every move of every character, with the numbers that decide what happens after you block it.
They're public, and they're the only pages here a search engine can read. The rest of the site is your own data and stays out of the index.
Where the numbers come from
All of it is pulled from wavu.wiki ↗, which publishes Tekken 8's frame data under CC0 — public domain, no attribution required. Credit is given anyway, on every page and in the colophon.
Every character's full movelist, plus the moves that belong to everyone — wake-up kicks, back-turned jabs, the Toe Kick — which wavu files without a character name and which an earlier pass threw away as malformed. The game version sits at the top of every page, because frame data goes stale with every balance patch and a number without a version is a guess.
Nothing here is hand-edited. A corpus you can regenerate is one you can trust
to still match its source, and scripts/build-frames.mjs in the repo rebuilds
the whole thing from the API.
Four things the columns mean, exactly
This is the part worth reading once. Frame data looks simpler than it is, and each of these has a wrong reading that seems perfectly reasonable.
On block quotes the least punishable end
Some moves publish a range rather than a single number, because how minus they
are depends on how far away you were. -31~-29 means somewhere between the two,
and which end you quote changes the advice.
These pages quote the least punishable end — the −29. Punish with something that beats 29 frames and it connects at either extreme. Quote the −31 instead and you'd be recommending a punish that whiffs at range, which is worse than recommending nothing.
A range that crosses zero, like -9~+6, gets no single number at all. It's plus
at one distance and minus at another, so it's shown as a range and counted as
neither. There are 49 of those in the game.
A "g" means they can guard, not that they're grounded
If a block value has a g after it — +17g — the opponent can guard during
recovery. It looks like the best plus-frame move in a character's kit, and
it isn't free pressure at all: they block whatever you do next.
It's the trap to remember, because those moves are disproportionately each character's highest plus value. Forty-five moves carry it. They're flagged, and they're excluded from every plus-on-block count on the site, so the counts here will read lower than a list that doesn't make the distinction.
Startup is absolute, or it says so
A string like 1,2 has a startup for the second hit, but it's counted from the
first hit, not from neutral. Roughly a third of all published startup values
work this way.
King's 1,2 publishes ,i10~12. Read that as a startup and it looks like an
i10 move, when it's really ten frames after the jab that precedes it. Where the
source counts from the previous hit, the value is marked rel and never sorts
as if it were a startup. Sort by startup and those rows go to the bottom, not
the top.
The level is the first hit
High, mid or low describes the first hit of the command — the one you have to block to reach the rest of it. A later hit in the same string can be a different level entirely, which is what turns strings into a guessing game.
Rows that deliver more than one hit are marked ⋯. That marker is counted from
the published per-hit damage, not from commas in the command: a row written
1,2 names the path but delivers one hit, while b+1+4 is a single input that
hits twice.
How they play, from the counts
Each character page opens with a profile: what they are, and what to expect from
each place on the stage. Every sentence in it is arithmetic: a count from that
character's own movelist, and where that count sits against the other 40. The
arithmetic behind each one is a hover away on the ? beside its heading.
Then the same grid on every page: thirteen categories, this character's number, the roster's middle, and a rank out of 41. Every character renders every row in the same order, so two pages can be read against each other. A rank answers "top fifth of what" in a way a percentile never does. Bold marks the top fifth; six characters reach it on nothing at all, which is a finding in its own right.
The categories are named after what they measure, not after anything players say. There's no "grappler", "Mishima" or "zoner" here: those are real and useful words, but they aren't in the frame data, and a hand-written label sitting beside a measured one is indistinguishable from it.
One category, parries and sabaki, is read out of prose instead of counted from a field. wavu has no marker for them at all; they're described in a sentence, and they're the identity of the characters that own them. Lidia has seven; Leroy, Asuka and Jun have five each and tie at 2nd of 41; King has none. Nothing was capturing that, and a profile that misses it isn't describing the character.
Four positions get answered on every page — your back to the wall, their back to the wall, centre stage, and a breakable floor. Absences get stated too: "none of Zafina's 136 moves break the floor, against a roster median of 3" is more useful than silence, because silence reads as an oversight.
Three notes on how the counts are taken.
Anything that tracks movelist size is a share, not a count: Yoshimitsu has 300 rows to Shaheen's 82, so "most chip damage" would otherwise just rank movelist sizes.
Shares divide by strikes, not by every row. Throws aren't part of what you have to block, and King publishes 216 rows of which 100 are throws, enough to push his wall share down to 13.9% and produce the sentence "less dangerous than most corners". That was an artifact of the denominator, not a fact about King. Over strikes he's 24.1%, 28th of 41: unremarkable.
The anti-sidestep axis counts homing strikes only, and only unconditional ones. 116 of the roster's 343 homing rows are throws, and four of King's read "homing during heat". Counted together he was the roster's most anti-step character on the strength of throws that only home while he's spending a resource.
And a property is read from where it actually lives, which is not always the
notes. Power crush is a pc window in the crush column and appears nowhere in
the prose; the flat properties are icons, so "Pseudo homing?" is an editor
thinking aloud and "Balcony Break (airborne)" is a conditional, neither of
them the property itself. Reading the text instead of the structure got all
three wrong, and shipped a page saying Leroy has no power crushes when he has
three.
It's allowed to disagree with received wisdom, and it's allowed to be wrong, which is more useful to know. An earlier version of this page said King was the roster's least dangerous character at a wall, and meant it: 14.4% against a median of 24.3%. That number was real and the conclusion was nonsense, because the denominator counted his 100 throw rows. He's 28th of 41 over strikes.
The finding that survived the audit is duller and holds: King is the roster's grappler by a distance (23 neutral throws to a median of 4, 1st of 41) and is unremarkable at a wall. The number is the claim, including when the number was the thing that was wrong.
Throws, and what to press
Each character page opens with a throw panel, which answers a narrower question than a break list does: which button do you mash when you see a throw you can't read yet?
Only throws they can start from neutral count. Chain-throw branches, throws that end a string, ground and air throws are all excluded. You don't choose a standing break against those, and counting them makes the whole table meaningless. It's the difference between King having 23 throws and appearing to have 100.
Side and back throws are excluded too, for a different reason: they aren't the
character's. Every character in the game has a left throw that breaks with 1, a
right throw that breaks with 2 and an unbreakable back throw, and wavu agrees:
it files a universal set on its Generic page, and King's page carries none of
his own. Counting them adds a phantom throw to every character's 1 and 2
columns, which is enough to flip which default wins on a small kit. Each
character's own names for them are in the panel's header hint.
Four things it will tell you that a plain list won't:
The best single default, with how often it actually works. If that number is under half, it admits there isn't a good default instead of dressing one up. Against King the honest answer is that no button covers even 40% of his throw game.
What your default misses, worst first. A break that catches five small throws and drops the 70-damage one is not a good break.
Which throws can't be broken at all. No input helps, so the counterplay is never being in the state that lets them land it. King's three crouch throws are the ones to internalise: if he's conditioned you to crouch, the answer is standing up.
Which throws they can start from a stance, which is the one that turns a guess into a read. Leroy's
uf+1+2is documented as also usable from Hermit and his other two neutral throws aren't, so a throw out of Hermit is a 1+2 break, not a coin flip between three. 24 throws across 16 characters carry an entry point like this.It's read from wavu's alternate-input field, which records where a move can be used and never states what a stance forbids, so the panel says what is documented from a stance, not that the list is complete. It also covers stances only, not the positions you're already caught in partway through a chain throw.
The panel also guesses when a throw is likely to come out, from the throw's own properties — a stated wall-splat value, a floor break, a homing property, a side switch. Giant Swing doing 70 on a wall splat instead of 45 is why King wants it at the wall, and that's readable straight off the data. These are inferences, not claims wavu makes, and each one shows what it was read from.
One asymmetry in the side-switch reading: a throw that switches sides on hit is a corner escape, so expect it when their back is to the wall. Six throws switch sides only when the throw is broken, which tells you nothing about when they'll use it. Those are left out.
Where a throw leaves you
The last column is the ground position, and it's the difference between two throws that do identical damage.
The abbreviations decode simply. FU or FD is whether you land face up or face down — face down means you can't see them. The last letter is which way your feet point: A away, T towards, L or R perpendicular. Feet towards is what decides whether your get-up kicks are aimed at the attacker or away from them.
Hovering the code tells you what you can actually do from there, which is the part that decides whether the position mattered:
- FUFT is the best of the four. Guard comes back on frame 11, five sooner
than anywhere else, and it's the only position with the Toe Kick (
d+3, i13, the fastest grounded attack in the game), the Spring Kick and the kip-up. - FUFA has the fastest wake-up kicks — i18 mid — but it's the one position whose kicks can't be hidden inside a quickstand, so they're the easiest to see coming.
- FDFT you can't see out of, and guard returns on frame 16.
- FDFA is the worst: face down, guard on 16, and wake-up kicks at i26, eight frames slower than the same kick from FUFA. Rolling beats pressing.
Get-up kicks are the smallest part of the wakeup game and the tooltips say so.
From every position you also have back getup (b), quickstand (u or db),
side roll (1 or d+1) and front roll (f). A side roll is a grounded
sidestep that makes a lot of oki whiff outright.
Some throws land you perpendicular instead (FUFL, FDFR and so on), or on-axis but skewed, which wavu notes as "off-axis". That isn't cosmetic: wavu's tracking page states that recovering off-axis changes the tracking of immediate followups, so neither their oki nor your get-up kick lines up the way the frames suggest. The four grounded stances above are described on-axis only, so a perpendicular landing gets the universal options and no invented numbers.
Only some throws state a position: wavu documents it for 87 of the 221 throws that start from neutral. A dash means the source is silent, not that the position is neutral. Where wavu hedges its own answer with a question mark, so does this.
What isn't here
Followups. The ground positions above say what you can do and how fast. What they don't say is which of the attacker's moves beats which of those options. That's a per-character oki chart wavu doesn't publish, and anything this site said about the best oki after a given throw would be invention.
Combos and routes. Out of scope.
Movement. Backdash range, sidestep quality and walk speed aren't frame-table properties, so there's nothing honest to say about whether a character "moves well" from this data. It's also the largest hole in the profile above: a character whose corner escape is stepping, with no side-switch move, reads here as having no escape at all.
Community archetypes. Covered above, and worth repeating: the profiles classify on measured axes only. If you want to know whether someone is a Mishima, this is the wrong page.
A per-character tracking rating. wavu records a tracking score — how many frames you can sidestep in a direction and still be hit, so a higher number tracks better — but only on 190 of 6,433 rows, across 20 of the 41 characters. Where it exists it's shown on the move; ranking a roster on 3% coverage would be ranking who has been measured. What is roster-wide is which moves are homing, and splitting those by hit level turns out to be the more useful question anyway: a character with eight homing moves where seven are highs isn't hard to step, they're hard to duck.
Comparing characters
The index page ranks the whole roster by any one of the categories, because "3rd of 41" on a character page can't tell you who the other forty are, and "evasive compared to whom" is the question a matchup actually raises.
One category at a time. All 23 at once is a 943-number data dump, and on a phone it's a horizontal scroll with no way back. Picking a column and reading down it is the same information with a question attached.
Reading it against your own data
The Matchups page is the other half. It knows nothing about frames, just your results: which characters you actually lose to, with a confidence interval on each. The Priority board ranks those by what they cost you.
Frame data tells you what's true of a character. Your matchup data tells you which of those truths you're currently failing to apply. The second one is shorter, and it's where the study time goes.