Silnik fuzzera Silnik American Fuzzy Lopa używa kilku algorytmów, których celem jest sprowokowanie nieprzewidzianego zachowania. Wśród nich należy wymienić zamiany bitów oraz całych bajtów pliku wejściowego na różne liczby, które mogą powodować przypadki graniczne. Poza tym, AFL może generować przypadki testowe na podstawie zbioru znanych słów kluczowych, co bywa pomocne w przypadku fuzzingu programów implementujących własne gramatyki - na przykład SQLite. Generowane przypadki testowe, które wzbudzają konkretne części kodu programu mogą potem zostać użyte przez bardziej wyspecjalizowane programy testujące. Ponadto, podczas fuzzowania możliwe jest wykrycie zawieszenia programu jeśli nie wyłącza się on przed upłynięciem określonego czasu oczekiwania. AFL zwraca także uwagę na awarie objawiające się zgłoszeniem sygnałów takich jak SIGABRT lub SIGSEGV.
Testowane dane wejściowe mogą zostać przekazane programowi w ramach standardowego wejścia lub wiersza poleceń. Fuzzowanie programów sieciowych nie jest aktualnie bezpośrednio wspierane, choć w niektórych przypadkach istnieją praktyczne rozwiązania tego problemu.