I'm on staff at a newspaper, so the sports I shoot for them are part of my weekly hours.
When I've shot stuff freelance it's a pre-game agreed upon flat rate. I get paid for the game, or I don't shoot.
As said above, if you give people an opportunity to go cheap on you, they will. There's no way in hell I'd shoot a whole football or basketball game and only make $20 or $30 off of it.
Other than that, I base that flat rate off of the time commitment at the actual game, then maybe I'll work something else into it if it's an outdoor sport and the weather is bad. Then there's more money if I'm supposed to edit the photos and write full cutlines for them and whatnot... if so, that's going to cost more. There's a handful of variables, I guess.
All in all - when I shoot freelance, it's flat rate or nothing and it costs more depending on how much work is required of me.