Pretty good
There's only one thing I could possibly gripe about: Your collision detection on poor froggy seems a bit overzealous. He decides he's "hit" blocks above him or those spinny death things when he really shouldn't have. The worst is in that one level where you have to jump from a single block up into a single-block-tall tunnel formed by a platform two tiles above another platform--I had to restart the level a dozen times because there's about a three frame window when you trying to enter the gap won't be mistaken for you hitting your head on a ceiling that's already below you and bouncing down at high speed. Jumping onto any platform directly above the platform you're standing on is harder than it has any right to be.
Anyways, made it up to level 25. I'm not even sure if that's possible--am I somehow supposed to reach that second hawk faster than it seems physically possible to do so, or am I supposed to bounce on him when he is literally overlapping the snakes with pixel-perfect precision and run the remainder of the level?