Wygrał co prawda kilka potyczek i pobił Szwedów 29 października w bitwie pod Karksi, nie zdołał jednak zapobiec utracie Parnawy (17 października) i Fellinu (3 listopada). Następnie Szwedzi oblegli Dorpat, który skapitulował 6 stycznia 1601 roku. Powodzenia szwedzkiego nie zachwiała nawet klęska w stoczonej następnego dnia bitwie pod Kiesią, gdyż nieopłacone wojsko litewskie rozeszło się po kraju, szukając żywności i grabiąc mieszkańców. Sprawiło to, że miejscowa ludność w coraz większym stopniu sprzyjała Szwedom, którzy wkrótce po przegranej bitwie zdobyli Wolmar.

W lutym 1601 roku Szwedzi dotarli aż do Dźwiny, w końcu lutego wojska szwedzkie pojawiły się pod Rygą (obroną miasta dowodził Jerzy Farensbach), a 28 marca obległy Kokenhausen. Miasto padło 1 kwietnia i broniła się już tylko polska załoga w zamku. Niektóre zagony szwedzkie przeszły Dźwinę zagrażając Kurlandii, a nawet Żmudzi. Zamku w Kokenhausen Karol nie zdołał zdobyć, pozostawił więc w mieście 2600 żołnierzy, by blokowali załogę zamku, a sam z główną armią wycofał się 30 km na północ od Kokenhausen – do Erlaa.