Krejcikova fechou o jogo em 2 sets a 1, com parciais de 0/6, 7/6 (7/2) e 6/1, em uma hora e 56 minutos de partida.
Sabalenka, número dois do mundo, vinha de uma sequência de 13 vitórias e, depois de um primeiro set arrasador e de abrir uma vantagem de 3-1 no segundo, acabou sofrendo a virada.
A bielorrussa volta agora para Miami para se preparar para o WTA 1000 de Indian Wells, também nos Estados Unidos, que começa no dia 8 de março.
"Barbora mereceu, jogou um tênis excelente e vou continuar trabalhando mara melhorar e obter um melhor resultado em Indian Wells", disse Sabalenka depois da partida.
Pegula, Swiatek e Gauff também estão na semi
Nas semifinais, Krejcikova, número 30 no ranking da WTA, vai enfrentar a americana Jessica Pegula, que se classificou sem jogar devido à desistência da tcheca Karolina Muchova.
Do outro lado da chave, a número 1 do mundo, a polonesa Iga Swiatek decide com a americana Coco Gauff quem será a outra finalista do torneio.