To be able to bhop, you need to land 1 unit above the ground during 1 tick. Most jumps with an intended bhop will have a consistent setup so that ALWAYS happens. For example, jump off the start to bhop, or ceiling smash to bhop, those kind of setups makes it so you always land 1 unit above the ground.
That being said, any floor with a tele height of 1 is bhoable. Sometime, you dont get a starting setup to make it consistent, so you just have to attempt the bhop and hope that you actually land 1 unit above the ground during 1 tick. That's a random bhop.
If you want a more in-depth explanation, the way the game works is there's a "pseudo-ground" 1 unit above every floor in the game. The game checks your position every tick (I believe there are 66 ticks/s). When you're falling ingame, you accelerate, and, for example, when you reach max velocity (3500 units/s), you travel at 52.5 units/tick. Wich means that if you're 51 units above the ground with a teleport on it while falling at max vel during 1 tick, the next tick you'll be technically 1.5 unit under the floor, but since the game stops you at the ground, you just get tele. However, if you're 53.5 units above the ground while falling at max vel, the next tick you'll be 1 unit above the ground and you'd be landing on that pseudo-ground. Since you're technically on the ground, you can jump (bhop) during that tick and avoid the tele.