There are two factors to consider: sampling at the pool and stale rate.
The sampling at the pool is the time the pool considers to calculate the average hashrate. The only thing the pool sees is the rate at which you, the miner, produces valid shares, whereas your computer sees exactly how many individual hashes were done. Since the shares can be said to be distributed uniformly at random, there is a large variance in the rate at which you find shares. The pool uses the rate of your shares to calculate an expected hashrate that matches your share submission rate. Therefore the pool might overestimate your hashrate if you are lucky and find a few shares quickly one after another, but it might also underestimate your actual hashrate if you're unlucky and don't find a share for some time.
Stale rate on the other hand is the ratio of shares that are rejected by the pool as invalid, either because they came after a block switch or the mining software/hardware you're using is faulty. Most mining software keeps track about the rejected stales.
I do get something called socket timeout...but never any stales. Could those be equal to one in the same? – Frankenmint – 2013-07-08T11:00:15.173
Oh, I completely missed connectivity issues, you're right. If the miner cannot report back the shares to the server, whether that is a complete disconnection or a delay that simply is too high, the shares will of course not be counted towards the work you did and the pool server will underestimate your hashrate. Please note that the hashrate on the pool server is the one that counts towards your reward. You need to check your Internet connection or test another pool. Keeping this setup will definitely lose some income. – cdecker – 2013-07-08T15:15:01.010