W tym przypadku zapamiętywanie adresu powrotu oraz stanu na stosie jest zbędne, ponieważ nie jest on już potrzebny. Takie wywołanie nazywa się wywołaniem ogonowym (ang. ) i może zostać zoptymalizowane zastąpieniem wywołania przez zwykłą instrukcję skoku.
Optymalizacja wywołań ogonowych może być stosowana do zwykłych, nierekurencyjnych funkcji, pozwalając na zaoszczędzenie odrobiny czasu i pamięci, a także zmniejszając zapotrzebowanie na stos. Funkcje rekurencyjne mogą wywoływać siebie bardzo dużą liczbę razy, a w szczególnych przypadkach potencjalnie w nieskończoność. Wielkość stosu jest fizycznie ograniczona z góry przez zasoby komputera. Optymalizacja ogonowa sprawia, że rekurencyjne wywołanie może korzystać z już istniejącej ramki, przez co zapotrzebowanie na stos maleje z liniowego O(n) do stałego O(1).
Przykład Rozważmy przykład obliczania silni w języku Ocaml.