John Hancock (Will Smith), choć odziedziczył imię i nazwisko po amerykańskim patriocie, który jako pierwszy złożył podpis pod deklaracją niepodległości, to z bohaterem narodowym nie ma nic wspólnego. Cierpi na amnezję. Nie pamięta swojej przeszłości, ale ma nadludzką moc.
Mimo to do panteonu herosów w typie Supermana też nie pasuje.
Jest opryskliwym Afroamerykaninem. Nosi powyciągane, brudne ciuchy. Nie rozstaje się z butelką whisky, więc do akcji zwykle rusza pijany. Po jego interwencjach Los Angeles przede wszystkim liczy straty, a nie cieszy się z ocalenia mieszkańców.
Hancock zmienia się, gdy ratuje Raya (Jason Bateman), speca od public relations. Ten namawia Hancocka na zmianę wizerunku. Heros daje się zamknąć w więzieniu za wyrządzone miastu szkody i czeka, aż przestępczość w Los Angeles wzrośnie, a ludzie za nim zatęsknią.
Do tego momentu film jest niezłą komedią obyczajową, która wykpiwa stereotypy i uprzedzenia wobec czarnoskórej mniejszości w Stanach. Jej siła polega na obsadzeniu w głównej roli hollywoodzkiej megagwiazdy – Willa Smitha. Aktor gra na luzie. Pierwsza połowa filmu to jego show.
Jednak twórcy nie wiedzieli, co zrobić z tak zarysowaną fabułą. I wpadli na pomysł najgorszy z możliwych – połączyli komediową intrygę z bombastycznym melodramatem.
Hancockowi wpada w oko żona Raya, blondwłosa Mary (Charlize Theron), która okazuje się... Dodam tylko, że Hancock nie będzie jedynym superbohaterem w mieście.
Z tego powodu scenariusz się rozłazi. W drugiej części "Hancock" jest efektownym kinem akcji, ale brakuje mu wyrazistego czarnego charakteru. Dramaturgia siada. Zamiast rosnącego napięcia mamy kiełkujący romans. Znika humor i ironiczny dystans. Pojawiają się patetyczne wyznania o miłości i sile przeznaczenia.
Ostatecznie Hancock kończy tak, jak tuzinkowy superbohater – wciśnięty w obcisły trykot musi bronić Ameryki przed złem.