Snapfish suggests 2700x1800 pixels, which is just a tad bit more then the large download here, so by their standards it would be best to get the extra large. Snapfish is a consumer lab though, and probably doesn't expect it's clients to be as picky... I like to keep at least 250 DPI, which would be 5000x7500 pixels.
If you look at the buying page it actually gives you the sizes each size will print at with 300 DPI (best printing), however even the extra large option doesn't cover that...
"Extra large2495x3493px (806 KB)8.3" x 11.6" @300 dpi"
That said, the larger the image is, the lower the DPI needs to be. This is because the larger the image is the further you must be from it to see it all! If you're looking at a small image it might be in your hand and closer to your face... while a larger print on the wall you would stand back to look at. Unless you are pixel peeping (examine it up close) it doesn't need to be a super sharp. Billboards are printed from the same files large wall prints are.
I would say your best bet would be to download the largest size... this would insure the best quality print, especially when printing at a 20x30.
D700, 14-24mm, 24-70mm 2.8, 70-200mm VRII, 50mm 1.4, 105mm Macro