Grammatically, both are correct. The situation might dictate how direct you want to be, especially if you are asking about how long a houseguest will be with you.
New words, one handy idiom, and a 2-minute quiz — delivered to your inbox to keep your streak alive.