Weed has a half-life in your system. How long it stays your system depends on the quantity you smoke. But the time maxes out at about 45 days. A smoking session for somebody with a clean system takes about 3-5 days to be clean. Smoke 2 days later and then have to wait about a week, and so forth . The time it will take roughly doubles every time you smoke until it maxes at about 45 days to be clean. So if you are maxed out and you wait about 3 weeks and then smoke again, you’re basically back to 45 days.
Cannabis can be detected in urine for nearly a week after smoking. Blood tests can be more accurate, and it might take a month to be totally clear. Hair tests show every drug ever taken when that hair was growing – this is why you see so many drug addicts with shaved heads or buzz cuts.