Results for SEO take a while and can bdepend on the competitive nature of the key words you're targeting. We're now taking a Results Based SEO approach with our clients and offering Page 1 place or they don't pay. Of course we do ask for payment to get the work going but if we fail we pay that back. We allow ourselves 90 days from the project start at which point we stop charging. Then if after 6 months we still fail to get page 1 then we refund.
If more SEO companies would take this approach there'd be less of the stigma around that some SEOs create.