Optional je tip koji ili sadrži vrijednost ili sadrži nil (bez vrijednosti). Swift čini nil eksplicitnim u sustavu tipova: String nikad ne može biti nil, ali String? može. Tako Swift većinu rušenja zbog null-pointera uklanja već u vrijeme prevođenja.
