Il 17 gennaio 2012 la Williams comunicò l'ingaggio di Senna, spinto da diversi sponsor personali, per il campionato 2012 come compagno di squadra di Pastor Maldonado, in sostituzione del connazionale Rubens Barrichello. La vettura si rivelò piuttosto competitiva, permettendo a Senna di lottare per i punti già dalle prime gare; il pilota brasiliano chiuse per la prima volta tra i primi dieci nel Gran Premio della Malesia, nel quale giunse sesto dopo una lunga rimonta dalle ultime posizioni. Nel successivo Gran Premio di Cina il pilota brasiliano ottenne un settimo posto al termine di una gara regolare; nel prosieguo della stagione, tuttavia, Senna ebbe difficoltà a ottenere buoni risultati in qualifica, subendo spesso distacchi pesanti dal compagno di squadra e riuscendo ad entrare tra i primi dieci solo nel Gran Premio d'Ungheria, chiuso in settima posizione. Nelle altre gare del campionato il pilota brasiliano ottenne altri sette piazzamenti a punti, risultando più costante di Maldonado nel rendimento in gara, ma non andò oltre un ottavo posto nel Gran Premio di Abu Dhabi. Nel Gran Premio del Belgio, concluso in dodicesima posizione, Senna fece segnare il primo giro più veloce in gara in carriera; il pilota brasiliano si piazzò in sedicesima posizione nella classifica piloti, con 31 punti. I risultati piuttosto deludenti ottenuti soprattutto in qualifica spinsero la squadra a non riconfermarlo, preferendogli il collaudatore Valtteri Bottas per il campionato 2013.