Оба варианты правильные.
Слитно пишется, если слово является союзным словом или местоименным наречием. Чтобы определить это, нужно задать вопрос "почему?".
Раздельно пишется, если слово является предлогом или местоимением. Задаём вопрос "по какому?".