Algoritmen blir gjennomført i to steg som kjøres om hverandre i en løkke. Det første steget produserer tilstandsestimater ut i fra nåværende tilstand og observasjoner som ble gjort. Deretter blir disse korrigert ved hjelp av en kovariansrest som blir beregnet og oppdatert ved hver iterasjon ved hjelp av målingene som blir gjort.