1. You could easily hire a Canadian to do this job. It's a legal requirement that you fill out a Labour Market Impact Assessment in order to extend me a job offer. If there's a Canadian applicant who's more qualified than I am, I'm not the right person for the job.
2. I'm overqualified. As much as I want to become a Canadian, I'm not just looking for a job, I'm looking for the job. I want to build a career and make use of all of my skills, and I'd like to be making roughly parity with my current salary in the US, which will likely mean doing similar or possibly even more challenging work.
3. The job is primarily analytics. I'm happy to track the progress of my work after it's deployed, and I have some experience with Google Analytics and similar tools. But if the focus of the position is on marketing strategy or analytics, my skills are probably less of a perfect fit.
4. You're located outside of the Lower Mainland or, failing that, the GTA. Nothing against Winnipeg or St. John (both very high on my list of vacation spots!), but the large majority of Canadians I know live somewhere in the Vancouver metro area, and the remainder live in Toronto. Immigrant success tends to be much higher when moving to a place where one already has a base of support, so I'm really looking primarily at companies who need writers near the couches on which I already sleep.