I found this, it's a pretty detailed description of what a frame trap is and how they work. Hope it helps.
There is a common misconception that frame traps leave you at frame advantage and then doing another move that has a startup less than that frame advantage. This is a link, and if the frame advantage is still greater than the startup when the opponent is blocking, then that is a block string.
A frame trap is a sequence of moves where the first move's frame advantage (or disadvantage) plus the startup frames (not counting the first active frame) for the follow-up move creates a window (the frame trap) where the opponent, even if they perform a move to react, will be stuffed (or even counterhit) because the active frames of their move will not come out before the active frames of the second move of the frame trap.
Of course, this means that frame traps are opponent-dependent; not all frame traps will work on all characters, and there are certain situations where you might not have any frame traps because an opponent has a certain move which will always allow them to escape the frame trap.
Let's start with trying to find out what some of the possible frame traps for a character are, using Juri as an example.
Looking at Juri's moves, you want to find the the pairs of moves which meet the following criteria:
The first and the second moves are normals, not throws/Specials/Supers/Ultras, as that will move the opponent too far away for the second move to create the frame trap.
The difference of the startup for the second move (not including the first active frame) and the frame advantage (or disadvantage) of the first move must be a non-negative number (i.e. greater-than or equal to zero).
Now, for any character, there are a number of pairs of moves that satisfy this criteria. However, you want to find the ones where that difference is as small as possible. For Juri, we will list the two of her moves with one of the smaller differences, two frames:
|First Move ||Frame Advantage on Block ||Second Move ||Startup |
|Close Light Punch ||3||Far Medium Punch ||6 |
And the frame trap window is calculated as follows:
| Part of Calculation||Value ||Running Total |
|Startup frames of second move ||6 ||6 |
|Minus first active frame of second move ||1 ||5 |
| Minus frame advantage on hit of first move||3 ||2|
|Window of frame trap || ||2 |
Now by all accounts, that's a pretty good frame trap. It allows for a window where the opponent can perform a move (the first startup frame of Juri's second move) but given that Juri will have an active frame executing at that time, it is more than likely that most moves an opponent throws out will not have an active frame that Juri can be hit with.
Let's assume the opponent is Zangief. In this case, none of his normals have a startup which can get active frames in play within two frames. If he tries to do any of them, Juri's Far Medium punch will hit him while he is in the active frames.
Note that this is only for normals, Zangief can technically escape with a Super, Ultra, or trade with the 3xP Lariat.
However, even if a move has enough startup moves to be caught in a frame trap, there is a possibility that the move will still escape it, given other properties of the move.
A perfect example is Ryu's MP Shoryuken. Even though it has three startup frames, the first four frames are invulnerable, which means that even though the active frames start too late to be caught in the frame trap, the invulnerability aspect of the move means that Juri is the one who will get punished if Ryu decides to reverse with this move.
In the end, you have to know your frame traps based on your character and your opponent's moves.