Base stats are what a Pokemon would have at lv 50 without a nature, 0 EVs, and with 0 IVs, minus 5.
A Pokemon with perfect, 31, IVs in every stat would get 31 to every stat at lv 100, and 15, 31 divided by 2 rounded down, to each stat at level 50. That means at low levels a one point difference in stats could be a big range of possible IVs. Once you level up more that range will become smaller and eventually just be a single number. By 20-30ish you should be able to tell a Pokemon's IVs within 2 numbers.
I open up http://www.psypokes.com/dex/stats.php and see what the perfect stats would be for the level of Pokemon I'm currently farming and only compare the ones that have good natures. That's the fastest method I've seen.