Everything you need to know about ranked-choice voting in one spot. Click to learn more!

City elections in Oakland, California (2020)

From Ballotpedia
Jump to: navigation, search
Ballotpedia Election Coverage Badge-smaller use.png

U.S. House • Congressional special elections • State Senate • State Assembly • Special state legislative • Local judges • State ballot measures • Local ballot measures • School boards • Municipal • Recalls • How to run for office
Flag of California.png


2022
2018
2020 Oakland elections
Ballotpedia Election Coverage Badge.png
Election dates
Filing deadline: August 7, 2020
General election: November 3, 2020
Election stats
Offices up: City attorney and city council districts 1, 3, 5, 7, and at-large
Total seats up: 6
Election type: Nonpartisan
Other municipal elections
U.S. municipal elections, 2020

The city of Oakland, California, held general elections for city attorney and Districts 1, 3, 5, 7, and at-large on the city council on November 3, 2020. The filing deadline for this election was August 7, 2020.

Oakland is a city in Alameda County, California. For information on 2020 elections in Alameda County, click here.

Election procedure changes in 2020

See also: Changes to election dates, procedures, and administration in response to the coronavirus (COVID-19) pandemic, 2020

Ballotpedia provided comprehensive coverage of how election dates and procedures changed in 2020. While the majority of changes occurred as a result of the coronavirus (COVID-19) pandemic, some changes occurred for other reasons.

California modified its absentee/mail-in and in-person voting procedures for the November 3, 2020, general election as follows:

  • Absentee/mail-in voting: Mail-in ballots were sent to all registered voters in the general election.
  • In-person voting: Counties were authorized to consolidate precincts and defer opening voting centers until the third day before the election.

For a full timeline about election modifications made in response to the COVID-19 outbreak, click here.

Explore Election Results site ad border blue.png

Elections

Click on the tabs below to show more information about those topics.

Candidates and results

City attorney

General election

   .rcvvotebox {
       color: #888;
       display: table;
       max-width: 600px;
   }
   .electionsectionheading {
       font-size: 1.25em;
       font-weight: bold;
       padding-left: 10px;
       margin-bottom: .75em;
       margin-top: 1em;
   }
   .rcvresults_text {
       font-size: 0.9em;
       font-weight: 200;
       border-bottom: 1px solid grey;
       padding-bottom: 7px;
       color: #888;
   }
   .election_results_text {
       display: inline;
   }
   .rcvrace_header {
       background: #4c4c4c;
       color: #fff;
       padding:7px 8px 8px;
       text-align: center;
       margin-bottom: 4px;
       font-size: 5px;
   }
   .rcvrace_header.Democratic {
       background-color: #003388;
   }
   .rcvrace_header.Republican {
       background-color: #db0000;
   }
   .rcvrace_header.Libertarian {
       background-color: #dac113;
   }
   .rcvrace_header.Green {
       background-color: #6db24f;
   }
   .mw-body #mw-content-text .rcvvotebox  h3.votebox-header-office-name {
       font-size: 20px;
       letter-spacing: .03em;
       padding-bottom: 8px;
       padding-left: 0;
   }
   .mw-body #mw-content-text  h5.rcvrace_header {
       font-size: 16px;
       font-weight: 300;
       letter-spacing: .04em;
       padding-left: 0;
       margin-top: 0px;
       margin-bottom: 0px;
       line-height: 1.5em;
   }
   .results_table {
       width: 100%;
   }
   .rcvresults_table_container {
       max-height: 355px;
       overflow-y: auto;
   }
   .votebox_legend {
       width: 100% !important;
   }
   .votebox_legend .non_result_row {
       vertical-align: top;
   }
   .results_row td {
       padding-bottom: 3px;
       padding-top: 3px;
   }
   .results_row td:first-child {
       padding-left: 8px;
   }
   .results_row {
       height: 56px;
   }
   .rcvvotebox-results-cell--check {
       color: #6db24f;
       font-size: 2em;
   }
   .mw-content-ltr td.votebox-results-cell--text,
   .mw-body #mw-content-text th.votebox-results-cell--text {
       font-weight: 300;
   }
   .mw-body #mw-content-text th.votebox-results-cell--text {
       font-weight: 100;
       text-align: left;
   }
   .votebox-results-cell--number {
       text-align: center;
   }
   .image-candidate-thumbnail-wrapper {
       border: 1px solid #999;
       border-radius: 50%;
       display: block;
       height: 50px;
       overflow: hidden;
       position: relative;
       width: 50px;
       margin-right: 10px;
   }
   .image-candidate-thumbnail-wrapper .image-candidate-thumbnail {
       width: 100%
   }
   .results_row.winner {
       background-color: #f4f4f4;
   }
   .non_result_row {
       color: #888;
       font-size: 12px;
       letter-spacing: 0.03em;
   }
   .non_result_row th {
       text-align: left !important;
   }
   .non_result_row div {
       display: inline-block;
   }
   .race_footer {
       display: block;
       margin: 8px auto;
       width: 50%;
   }
   .votebox-results-metadata {
       padding-bottom: 8px;
       padding-left: 16px;
       padding-top: 8px;
   }
   .votebox-results-metadata-p {
       font-size: 12px;
       letter-spacing: 0.03em;
       padding-bottom: 0px;
       margin-bottom: -2px !important;
   }
   .outer_percentage {
       margin: 0px 10px;
       width: 90%;
       background-color: #ccc;
       float: left;
       height: 22px;
       overflow-y: hidden;
       position: relative;
       top: -1px;
       max-width: 75px;
   }
   .inner_percentage {
       display: inline-block;
       position: absolute;
       top: 0px;
       left: 0px;
       height: 100%;
   }
   .inner_percentage.Democratic {
       background-color: #003388;
   }
   .inner_percentage.Republican {
       background-color: #db0000;
   }
   .inner_percentage.Libertarian {
       background-color: #f9d334;
   }
   .inner_percentage.Green {
       background-color: #6db24f;
   }
   .inner_percentage.CrossFiled {
       background-color: grey;
   }
   .inner_percentage, .inner_percentage.Nonpartisan, .inner_percentage.Independent, .inner_percentage.Constitution, .inner_percentage.unknown {
       background-color: green;
   }
   .percentage_number {
       display: inline-block;
       width: 100%;
       color:white;
       position: absolute;
       top: 2px;
       left: 0;
       text-align: center;
       z-index:1;
   }
   .votebox_bp_logo {
       width: 35px !important;
       vertical-align: middle;
       margin-right: 12px;
       position: relative;
       top: -5px;
   }
   .indicate_scroll {
       font-size: 12px;
       margin: 0;
       padding-bottom: 5px;
       font-style: italic;
       color: #0645ad;
   }
   .rcv_select {
       display: inline-block;
   }
   @media screen and (max-width: 411px) {
       .rcvvotebox, h5.rcvrace_header, .rcvresults_text, .rcvresults_table_container, .rcvvotebox_legend {
          width: 95% !important;
       }
       .rcvtooltip:hover span {
         width: 215px !important;
         font-size:0.58em;
       }
    }
   .rcvtooltip {
       color: #000000; outline: none;
       position: relative;
     }
     .rcvtooltip span {
       display:none;
     }
     .rcvtooltip:hover span {
      /* Show the tooltip text when you mouse over the tooltip container */
       visibility: visible;
       display:inline-block;
       position:absolute;
       top: -120px;
       left: 0px;
       right: 0;
       z-index:100;
    }
  .rcvclassic { padding: 0.8em 1em;
   opacity:1 !important;
   background-color:white !important;
   width: 350px;
   color:#888;
   font-size:0.68em;
   text-align: center;
   border: 1px solid #888;
   border-radius: 6px;
 }
   .silhouette-image-container {

position: relative; display: inline-block;

   }
   .silhouette-text-overlay {
       position: absolute;
       top: 0;
       left: 0;
       right: 0;
       bottom: 0;
       display: flex;
       justify-content: center;
       align-items: center;
       background-color: white;
       opacity: 0;
       font-size: 12px;
       text-align: center;
       transition: opacity 0.3s ease;
       border-radius: 100%;
       line-height: 1.1;
       cursor: pointer;
   }
   .silhouette-image-container:hover .silhouette-text-overlay {
       opacity: 1;
   }

General election for Oakland City Attorney

The ranked-choice voting election was won by Barbara Parker in round 1 .


Total votes: 174,371
Candidate Connection = candidate completed the Ballotpedia Candidate Connection survey.

City Council At-large

General election

   .rcvvotebox {
       color: #888;
       display: table;
       max-width: 600px;
   }
   .electionsectionheading {
       font-size: 1.25em;
       font-weight: bold;
       padding-left: 10px;
       margin-bottom: .75em;
       margin-top: 1em;
   }
   .rcvresults_text {
       font-size: 0.9em;
       font-weight: 200;
       border-bottom: 1px solid grey;
       padding-bottom: 7px;
       color: #888;
   }
   .election_results_text {
       display: inline;
   }
   .rcvrace_header {
       background: #4c4c4c;
       color: #fff;
       padding:7px 8px 8px;
       text-align: center;
       margin-bottom: 4px;
       font-size: 5px;
   }
   .rcvrace_header.Democratic {
       background-color: #003388;
   }
   .rcvrace_header.Republican {
       background-color: #db0000;
   }
   .rcvrace_header.Libertarian {
       background-color: #dac113;
   }
   .rcvrace_header.Green {
       background-color: #6db24f;
   }
   .mw-body #mw-content-text .rcvvotebox  h3.votebox-header-office-name {
       font-size: 20px;
       letter-spacing: .03em;
       padding-bottom: 8px;
       padding-left: 0;
   }
   .mw-body #mw-content-text  h5.rcvrace_header {
       font-size: 16px;
       font-weight: 300;
       letter-spacing: .04em;
       padding-left: 0;
       margin-top: 0px;
       margin-bottom: 0px;
       line-height: 1.5em;
   }
   .results_table {
       width: 100%;
   }
   .rcvresults_table_container {
       max-height: 355px;
       overflow-y: auto;
   }
   .votebox_legend {
       width: 100% !important;
   }
   .votebox_legend .non_result_row {
       vertical-align: top;
   }
   .results_row td {
       padding-bottom: 3px;
       padding-top: 3px;
   }
   .results_row td:first-child {
       padding-left: 8px;
   }
   .results_row {
       height: 56px;
   }
   .rcvvotebox-results-cell--check {
       color: #6db24f;
       font-size: 2em;
   }
   .mw-content-ltr td.votebox-results-cell--text,
   .mw-body #mw-content-text th.votebox-results-cell--text {
       font-weight: 300;
   }
   .mw-body #mw-content-text th.votebox-results-cell--text {
       font-weight: 100;
       text-align: left;
   }
   .votebox-results-cell--number {
       text-align: center;
   }
   .image-candidate-thumbnail-wrapper {
       border: 1px solid #999;
       border-radius: 50%;
       display: block;
       height: 50px;
       overflow: hidden;
       position: relative;
       width: 50px;
       margin-right: 10px;
   }
   .image-candidate-thumbnail-wrapper .image-candidate-thumbnail {
       width: 100%
   }
   .results_row.winner {
       background-color: #f4f4f4;
   }
   .non_result_row {
       color: #888;
       font-size: 12px;
       letter-spacing: 0.03em;
   }
   .non_result_row th {
       text-align: left !important;
   }
   .non_result_row div {
       display: inline-block;
   }
   .race_footer {
       display: block;
       margin: 8px auto;
       width: 50%;
   }
   .votebox-results-metadata {
       padding-bottom: 8px;
       padding-left: 16px;
       padding-top: 8px;
   }
   .votebox-results-metadata-p {
       font-size: 12px;
       letter-spacing: 0.03em;
       padding-bottom: 0px;
       margin-bottom: -2px !important;
   }
   .outer_percentage {
       margin: 0px 10px;
       width: 90%;
       background-color: #ccc;
       float: left;
       height: 22px;
       overflow-y: hidden;
       position: relative;
       top: -1px;
       max-width: 75px;
   }
   .inner_percentage {
       display: inline-block;
       position: absolute;
       top: 0px;
       left: 0px;
       height: 100%;
   }
   .inner_percentage.Democratic {
       background-color: #003388;
   }
   .inner_percentage.Republican {
       background-color: #db0000;
   }
   .inner_percentage.Libertarian {
       background-color: #f9d334;
   }
   .inner_percentage.Green {
       background-color: #6db24f;
   }
   .inner_percentage.CrossFiled {
       background-color: grey;
   }
   .inner_percentage, .inner_percentage.Nonpartisan, .inner_percentage.Independent, .inner_percentage.Constitution, .inner_percentage.unknown {
       background-color: green;
   }
   .percentage_number {
       display: inline-block;
       width: 100%;
       color:white;
       position: absolute;
       top: 2px;
       left: 0;
       text-align: center;
       z-index:1;
   }
   .votebox_bp_logo {
       width: 35px !important;
       vertical-align: middle;
       margin-right: 12px;
       position: relative;
       top: -5px;
   }
   .indicate_scroll {
       font-size: 12px;
       margin: 0;
       padding-bottom: 5px;
       font-style: italic;
       color: #0645ad;
   }
   .rcv_select {
       display: inline-block;
   }
   @media screen and (max-width: 411px) {
       .rcvvotebox, h5.rcvrace_header, .rcvresults_text, .rcvresults_table_container, .rcvvotebox_legend {
          width: 95% !important;
       }
       .rcvtooltip:hover span {
         width: 215px !important;
         font-size:0.58em;
       }
    }
   .rcvtooltip {
       color: #000000; outline: none;
       position: relative;
     }
     .rcvtooltip span {
       display:none;
     }
     .rcvtooltip:hover span {
      /* Show the tooltip text when you mouse over the tooltip container */
       visibility: visible;
       display:inline-block;
       position:absolute;
       top: -120px;
       left: 0px;
       right: 0;
       z-index:100;
    }
  .rcvclassic { padding: 0.8em 1em;
   opacity:1 !important;
   background-color:white !important;
   width: 350px;
   color:#888;
   font-size:0.68em;
   text-align: center;
   border: 1px solid #888;
   border-radius: 6px;
 }
   .silhouette-image-container {

position: relative; display: inline-block;

   }
   .silhouette-text-overlay {
       position: absolute;
       top: 0;
       left: 0;
       right: 0;
       bottom: 0;
       display: flex;
       justify-content: center;
       align-items: center;
       background-color: white;
       opacity: 0;
       font-size: 12px;
       text-align: center;
       transition: opacity 0.3s ease;
       border-radius: 100%;
       line-height: 1.1;
       cursor: pointer;
   }
   .silhouette-image-container:hover .silhouette-text-overlay {
       opacity: 1;
   }

General election for Oakland City Council At-large

The ranked-choice voting election was won by Rebecca Kaplan in round 2 . The results of Round are displayed below. To see the results of other rounds, use the dropdown menu above to select a round and the table will update.


Total votes: 181,530
Candidate Connection = candidate completed the Ballotpedia Candidate Connection survey.

City Council District 1

General election

   .rcvvotebox {
       color: #888;
       display: table;
       max-width: 600px;
   }
   .electionsectionheading {
       font-size: 1.25em;
       font-weight: bold;
       padding-left: 10px;
       margin-bottom: .75em;
       margin-top: 1em;
   }
   .rcvresults_text {
       font-size: 0.9em;
       font-weight: 200;
       border-bottom: 1px solid grey;
       padding-bottom: 7px;
       color: #888;
   }
   .election_results_text {
       display: inline;
   }
   .rcvrace_header {
       background: #4c4c4c;
       color: #fff;
       padding:7px 8px 8px;
       text-align: center;
       margin-bottom: 4px;
       font-size: 5px;
   }
   .rcvrace_header.Democratic {
       background-color: #003388;
   }
   .rcvrace_header.Republican {
       background-color: #db0000;
   }
   .rcvrace_header.Libertarian {
       background-color: #dac113;
   }
   .rcvrace_header.Green {
       background-color: #6db24f;
   }
   .mw-body #mw-content-text .rcvvotebox  h3.votebox-header-office-name {
       font-size: 20px;
       letter-spacing: .03em;
       padding-bottom: 8px;
       padding-left: 0;
   }
   .mw-body #mw-content-text  h5.rcvrace_header {
       font-size: 16px;
       font-weight: 300;
       letter-spacing: .04em;
       padding-left: 0;
       margin-top: 0px;
       margin-bottom: 0px;
       line-height: 1.5em;
   }
   .results_table {
       width: 100%;
   }
   .rcvresults_table_container {
       max-height: 355px;
       overflow-y: auto;
   }
   .votebox_legend {
       width: 100% !important;
   }
   .votebox_legend .non_result_row {
       vertical-align: top;
   }
   .results_row td {
       padding-bottom: 3px;
       padding-top: 3px;
   }
   .results_row td:first-child {
       padding-left: 8px;
   }
   .results_row {
       height: 56px;
   }
   .rcvvotebox-results-cell--check {
       color: #6db24f;
       font-size: 2em;
   }
   .mw-content-ltr td.votebox-results-cell--text,
   .mw-body #mw-content-text th.votebox-results-cell--text {
       font-weight: 300;
   }
   .mw-body #mw-content-text th.votebox-results-cell--text {
       font-weight: 100;
       text-align: left;
   }
   .votebox-results-cell--number {
       text-align: center;
   }
   .image-candidate-thumbnail-wrapper {
       border: 1px solid #999;
       border-radius: 50%;
       display: block;
       height: 50px;
       overflow: hidden;
       position: relative;
       width: 50px;
       margin-right: 10px;
   }
   .image-candidate-thumbnail-wrapper .image-candidate-thumbnail {
       width: 100%
   }
   .results_row.winner {
       background-color: #f4f4f4;
   }
   .non_result_row {
       color: #888;
       font-size: 12px;
       letter-spacing: 0.03em;
   }
   .non_result_row th {
       text-align: left !important;
   }
   .non_result_row div {
       display: inline-block;
   }
   .race_footer {
       display: block;
       margin: 8px auto;
       width: 50%;
   }
   .votebox-results-metadata {
       padding-bottom: 8px;
       padding-left: 16px;
       padding-top: 8px;
   }
   .votebox-results-metadata-p {
       font-size: 12px;
       letter-spacing: 0.03em;
       padding-bottom: 0px;
       margin-bottom: -2px !important;
   }
   .outer_percentage {
       margin: 0px 10px;
       width: 90%;
       background-color: #ccc;
       float: left;
       height: 22px;
       overflow-y: hidden;
       position: relative;
       top: -1px;
       max-width: 75px;
   }
   .inner_percentage {
       display: inline-block;
       position: absolute;
       top: 0px;
       left: 0px;
       height: 100%;
   }
   .inner_percentage.Democratic {
       background-color: #003388;
   }
   .inner_percentage.Republican {
       background-color: #db0000;
   }
   .inner_percentage.Libertarian {
       background-color: #f9d334;
   }
   .inner_percentage.Green {
       background-color: #6db24f;
   }
   .inner_percentage.CrossFiled {
       background-color: grey;
   }
   .inner_percentage, .inner_percentage.Nonpartisan, .inner_percentage.Independent, .inner_percentage.Constitution, .inner_percentage.unknown {
       background-color: green;
   }
   .percentage_number {
       display: inline-block;
       width: 100%;
       color:white;
       position: absolute;
       top: 2px;
       left: 0;
       text-align: center;
       z-index:1;
   }
   .votebox_bp_logo {
       width: 35px !important;
       vertical-align: middle;
       margin-right: 12px;
       position: relative;
       top: -5px;
   }
   .indicate_scroll {
       font-size: 12px;
       margin: 0;
       padding-bottom: 5px;
       font-style: italic;
       color: #0645ad;
   }
   .rcv_select {
       display: inline-block;
   }
   @media screen and (max-width: 411px) {
       .rcvvotebox, h5.rcvrace_header, .rcvresults_text, .rcvresults_table_container, .rcvvotebox_legend {
          width: 95% !important;
       }
       .rcvtooltip:hover span {
         width: 215px !important;
         font-size:0.58em;
       }
    }
   .rcvtooltip {
       color: #000000; outline: none;
       position: relative;
     }
     .rcvtooltip span {
       display:none;
     }
     .rcvtooltip:hover span {
      /* Show the tooltip text when you mouse over the tooltip container */
       visibility: visible;
       display:inline-block;
       position:absolute;
       top: -120px;
       left: 0px;
       right: 0;
       z-index:100;
    }
  .rcvclassic { padding: 0.8em 1em;
   opacity:1 !important;
   background-color:white !important;
   width: 350px;
   color:#888;
   font-size:0.68em;
   text-align: center;
   border: 1px solid #888;
   border-radius: 6px;
 }
   .silhouette-image-container {

position: relative; display: inline-block;

   }
   .silhouette-text-overlay {
       position: absolute;
       top: 0;
       left: 0;
       right: 0;
       bottom: 0;
       display: flex;
       justify-content: center;
       align-items: center;
       background-color: white;
       opacity: 0;
       font-size: 12px;
       text-align: center;
       transition: opacity 0.3s ease;
       border-radius: 100%;
       line-height: 1.1;
       cursor: pointer;
   }
   .silhouette-image-container:hover .silhouette-text-overlay {
       opacity: 1;
   }

General election for Oakland City Council District 1

The ranked-choice voting election was won by Dan Kalb in round 1 .


Total votes: 36,413
Candidate Connection = candidate completed the Ballotpedia Candidate Connection survey.

City Council District 3

General election

   .rcvvotebox {
       color: #888;
       display: table;
       max-width: 600px;
   }
   .electionsectionheading {
       font-size: 1.25em;
       font-weight: bold;
       padding-left: 10px;
       margin-bottom: .75em;
       margin-top: 1em;
   }
   .rcvresults_text {
       font-size: 0.9em;
       font-weight: 200;
       border-bottom: 1px solid grey;
       padding-bottom: 7px;
       color: #888;
   }
   .election_results_text {
       display: inline;
   }
   .rcvrace_header {
       background: #4c4c4c;
       color: #fff;
       padding:7px 8px 8px;
       text-align: center;
       margin-bottom: 4px;
       font-size: 5px;
   }
   .rcvrace_header.Democratic {
       background-color: #003388;
   }
   .rcvrace_header.Republican {
       background-color: #db0000;
   }
   .rcvrace_header.Libertarian {
       background-color: #dac113;
   }
   .rcvrace_header.Green {
       background-color: #6db24f;
   }
   .mw-body #mw-content-text .rcvvotebox  h3.votebox-header-office-name {
       font-size: 20px;
       letter-spacing: .03em;
       padding-bottom: 8px;
       padding-left: 0;
   }
   .mw-body #mw-content-text  h5.rcvrace_header {
       font-size: 16px;
       font-weight: 300;
       letter-spacing: .04em;
       padding-left: 0;
       margin-top: 0px;
       margin-bottom: 0px;
       line-height: 1.5em;
   }
   .results_table {
       width: 100%;
   }
   .rcvresults_table_container {
       max-height: 355px;
       overflow-y: auto;
   }
   .votebox_legend {
       width: 100% !important;
   }
   .votebox_legend .non_result_row {
       vertical-align: top;
   }
   .results_row td {
       padding-bottom: 3px;
       padding-top: 3px;
   }
   .results_row td:first-child {
       padding-left: 8px;
   }
   .results_row {
       height: 56px;
   }
   .rcvvotebox-results-cell--check {
       color: #6db24f;
       font-size: 2em;
   }
   .mw-content-ltr td.votebox-results-cell--text,
   .mw-body #mw-content-text th.votebox-results-cell--text {
       font-weight: 300;
   }
   .mw-body #mw-content-text th.votebox-results-cell--text {
       font-weight: 100;
       text-align: left;
   }
   .votebox-results-cell--number {
       text-align: center;
   }
   .image-candidate-thumbnail-wrapper {
       border: 1px solid #999;
       border-radius: 50%;
       display: block;
       height: 50px;
       overflow: hidden;
       position: relative;
       width: 50px;
       margin-right: 10px;
   }
   .image-candidate-thumbnail-wrapper .image-candidate-thumbnail {
       width: 100%
   }
   .results_row.winner {
       background-color: #f4f4f4;
   }
   .non_result_row {
       color: #888;
       font-size: 12px;
       letter-spacing: 0.03em;
   }
   .non_result_row th {
       text-align: left !important;
   }
   .non_result_row div {
       display: inline-block;
   }
   .race_footer {
       display: block;
       margin: 8px auto;
       width: 50%;
   }
   .votebox-results-metadata {
       padding-bottom: 8px;
       padding-left: 16px;
       padding-top: 8px;
   }
   .votebox-results-metadata-p {
       font-size: 12px;
       letter-spacing: 0.03em;
       padding-bottom: 0px;
       margin-bottom: -2px !important;
   }
   .outer_percentage {
       margin: 0px 10px;
       width: 90%;
       background-color: #ccc;
       float: left;
       height: 22px;
       overflow-y: hidden;
       position: relative;
       top: -1px;
       max-width: 75px;
   }
   .inner_percentage {
       display: inline-block;
       position: absolute;
       top: 0px;
       left: 0px;
       height: 100%;
   }
   .inner_percentage.Democratic {
       background-color: #003388;
   }
   .inner_percentage.Republican {
       background-color: #db0000;
   }
   .inner_percentage.Libertarian {
       background-color: #f9d334;
   }
   .inner_percentage.Green {
       background-color: #6db24f;
   }
   .inner_percentage.CrossFiled {
       background-color: grey;
   }
   .inner_percentage, .inner_percentage.Nonpartisan, .inner_percentage.Independent, .inner_percentage.Constitution, .inner_percentage.unknown {
       background-color: green;
   }
   .percentage_number {
       display: inline-block;
       width: 100%;
       color:white;
       position: absolute;
       top: 2px;
       left: 0;
       text-align: center;
       z-index:1;
   }
   .votebox_bp_logo {
       width: 35px !important;
       vertical-align: middle;
       margin-right: 12px;
       position: relative;
       top: -5px;
   }
   .indicate_scroll {
       font-size: 12px;
       margin: 0;
       padding-bottom: 5px;
       font-style: italic;
       color: #0645ad;
   }
   .rcv_select {
       display: inline-block;
   }
   @media screen and (max-width: 411px) {
       .rcvvotebox, h5.rcvrace_header, .rcvresults_text, .rcvresults_table_container, .rcvvotebox_legend {
          width: 95% !important;
       }
       .rcvtooltip:hover span {
         width: 215px !important;
         font-size:0.58em;
       }
    }
   .rcvtooltip {
       color: #000000; outline: none;
       position: relative;
     }
     .rcvtooltip span {
       display:none;
     }
     .rcvtooltip:hover span {
      /* Show the tooltip text when you mouse over the tooltip container */
       visibility: visible;
       display:inline-block;
       position:absolute;
       top: -120px;
       left: 0px;
       right: 0;
       z-index:100;
    }
  .rcvclassic { padding: 0.8em 1em;
   opacity:1 !important;
   background-color:white !important;
   width: 350px;
   color:#888;
   font-size:0.68em;
   text-align: center;
   border: 1px solid #888;
   border-radius: 6px;
 }
   .silhouette-image-container {

position: relative; display: inline-block;

   }
   .silhouette-text-overlay {
       position: absolute;
       top: 0;
       left: 0;
       right: 0;
       bottom: 0;
       display: flex;
       justify-content: center;
       align-items: center;
       background-color: white;
       opacity: 0;
       font-size: 12px;
       text-align: center;
       transition: opacity 0.3s ease;
       border-radius: 100%;
       line-height: 1.1;
       cursor: pointer;
   }
   .silhouette-image-container:hover .silhouette-text-overlay {
       opacity: 1;
   }

General election for Oakland City Council District 3

The ranked-choice voting election was won by Carroll Fife in round 3 . The results of Round are displayed below. To see the results of other rounds, use the dropdown menu above to select a round and the table will update.


Total votes: 30,408
Candidate Connection = candidate completed the Ballotpedia Candidate Connection survey.

City Council District 5

General election

   .rcvvotebox {
       color: #888;
       display: table;
       max-width: 600px;
   }
   .electionsectionheading {
       font-size: 1.25em;
       font-weight: bold;
       padding-left: 10px;
       margin-bottom: .75em;
       margin-top: 1em;
   }
   .rcvresults_text {
       font-size: 0.9em;
       font-weight: 200;
       border-bottom: 1px solid grey;
       padding-bottom: 7px;
       color: #888;
   }
   .election_results_text {
       display: inline;
   }
   .rcvrace_header {
       background: #4c4c4c;
       color: #fff;
       padding:7px 8px 8px;
       text-align: center;
       margin-bottom: 4px;
       font-size: 5px;
   }
   .rcvrace_header.Democratic {
       background-color: #003388;
   }
   .rcvrace_header.Republican {
       background-color: #db0000;
   }
   .rcvrace_header.Libertarian {
       background-color: #dac113;
   }
   .rcvrace_header.Green {
       background-color: #6db24f;
   }
   .mw-body #mw-content-text .rcvvotebox  h3.votebox-header-office-name {
       font-size: 20px;
       letter-spacing: .03em;
       padding-bottom: 8px;
       padding-left: 0;
   }
   .mw-body #mw-content-text  h5.rcvrace_header {
       font-size: 16px;
       font-weight: 300;
       letter-spacing: .04em;
       padding-left: 0;
       margin-top: 0px;
       margin-bottom: 0px;
       line-height: 1.5em;
   }
   .results_table {
       width: 100%;
   }
   .rcvresults_table_container {
       max-height: 355px;
       overflow-y: auto;
   }
   .votebox_legend {
       width: 100% !important;
   }
   .votebox_legend .non_result_row {
       vertical-align: top;
   }
   .results_row td {
       padding-bottom: 3px;
       padding-top: 3px;
   }
   .results_row td:first-child {
       padding-left: 8px;
   }
   .results_row {
       height: 56px;
   }
   .rcvvotebox-results-cell--check {
       color: #6db24f;
       font-size: 2em;
   }
   .mw-content-ltr td.votebox-results-cell--text,
   .mw-body #mw-content-text th.votebox-results-cell--text {
       font-weight: 300;
   }
   .mw-body #mw-content-text th.votebox-results-cell--text {
       font-weight: 100;
       text-align: left;
   }
   .votebox-results-cell--number {
       text-align: center;
   }
   .image-candidate-thumbnail-wrapper {
       border: 1px solid #999;
       border-radius: 50%;
       display: block;
       height: 50px;
       overflow: hidden;
       position: relative;
       width: 50px;
       margin-right: 10px;
   }
   .image-candidate-thumbnail-wrapper .image-candidate-thumbnail {
       width: 100%
   }
   .results_row.winner {
       background-color: #f4f4f4;
   }
   .non_result_row {
       color: #888;
       font-size: 12px;
       letter-spacing: 0.03em;
   }
   .non_result_row th {
       text-align: left !important;
   }
   .non_result_row div {
       display: inline-block;
   }
   .race_footer {
       display: block;
       margin: 8px auto;
       width: 50%;
   }
   .votebox-results-metadata {
       padding-bottom: 8px;
       padding-left: 16px;
       padding-top: 8px;
   }
   .votebox-results-metadata-p {
       font-size: 12px;
       letter-spacing: 0.03em;
       padding-bottom: 0px;
       margin-bottom: -2px !important;
   }
   .outer_percentage {
       margin: 0px 10px;
       width: 90%;
       background-color: #ccc;
       float: left;
       height: 22px;
       overflow-y: hidden;
       position: relative;
       top: -1px;
       max-width: 75px;
   }
   .inner_percentage {
       display: inline-block;
       position: absolute;
       top: 0px;
       left: 0px;
       height: 100%;
   }
   .inner_percentage.Democratic {
       background-color: #003388;
   }
   .inner_percentage.Republican {
       background-color: #db0000;
   }
   .inner_percentage.Libertarian {
       background-color: #f9d334;
   }
   .inner_percentage.Green {
       background-color: #6db24f;
   }
   .inner_percentage.CrossFiled {
       background-color: grey;
   }
   .inner_percentage, .inner_percentage.Nonpartisan, .inner_percentage.Independent, .inner_percentage.Constitution, .inner_percentage.unknown {
       background-color: green;
   }
   .percentage_number {
       display: inline-block;
       width: 100%;
       color:white;
       position: absolute;
       top: 2px;
       left: 0;
       text-align: center;
       z-index:1;
   }
   .votebox_bp_logo {
       width: 35px !important;
       vertical-align: middle;
       margin-right: 12px;
       position: relative;
       top: -5px;
   }
   .indicate_scroll {
       font-size: 12px;
       margin: 0;
       padding-bottom: 5px;
       font-style: italic;
       color: #0645ad;
   }
   .rcv_select {
       display: inline-block;
   }
   @media screen and (max-width: 411px) {
       .rcvvotebox, h5.rcvrace_header, .rcvresults_text, .rcvresults_table_container, .rcvvotebox_legend {
          width: 95% !important;
       }
       .rcvtooltip:hover span {
         width: 215px !important;
         font-size:0.58em;
       }
    }
   .rcvtooltip {
       color: #000000; outline: none;
       position: relative;
     }
     .rcvtooltip span {
       display:none;
     }
     .rcvtooltip:hover span {
      /* Show the tooltip text when you mouse over the tooltip container */
       visibility: visible;
       display:inline-block;
       position:absolute;
       top: -120px;
       left: 0px;
       right: 0;
       z-index:100;
    }
  .rcvclassic { padding: 0.8em 1em;
   opacity:1 !important;
   background-color:white !important;
   width: 350px;
   color:#888;
   font-size:0.68em;
   text-align: center;
   border: 1px solid #888;
   border-radius: 6px;
 }
   .silhouette-image-container {

position: relative; display: inline-block;

   }
   .silhouette-text-overlay {
       position: absolute;
       top: 0;
       left: 0;
       right: 0;
       bottom: 0;
       display: flex;
       justify-content: center;
       align-items: center;
       background-color: white;
       opacity: 0;
       font-size: 12px;
       text-align: center;
       transition: opacity 0.3s ease;
       border-radius: 100%;
       line-height: 1.1;
       cursor: pointer;
   }
   .silhouette-image-container:hover .silhouette-text-overlay {
       opacity: 1;
   }

General election for Oakland City Council District 5

The ranked-choice voting election was won by Noel Gallo in round 1 .


Total votes: 17,436
Candidate Connection = candidate completed the Ballotpedia Candidate Connection survey.

City Council District 7

General election

   .rcvvotebox {
       color: #888;
       display: table;
       max-width: 600px;
   }
   .electionsectionheading {
       font-size: 1.25em;
       font-weight: bold;
       padding-left: 10px;
       margin-bottom: .75em;
       margin-top: 1em;
   }
   .rcvresults_text {
       font-size: 0.9em;
       font-weight: 200;
       border-bottom: 1px solid grey;
       padding-bottom: 7px;
       color: #888;
   }
   .election_results_text {
       display: inline;
   }
   .rcvrace_header {
       background: #4c4c4c;
       color: #fff;
       padding:7px 8px 8px;
       text-align: center;
       margin-bottom: 4px;
       font-size: 5px;
   }
   .rcvrace_header.Democratic {
       background-color: #003388;
   }
   .rcvrace_header.Republican {
       background-color: #db0000;
   }
   .rcvrace_header.Libertarian {
       background-color: #dac113;
   }
   .rcvrace_header.Green {
       background-color: #6db24f;
   }
   .mw-body #mw-content-text .rcvvotebox  h3.votebox-header-office-name {
       font-size: 20px;
       letter-spacing: .03em;
       padding-bottom: 8px;
       padding-left: 0;
   }
   .mw-body #mw-content-text  h5.rcvrace_header {
       font-size: 16px;
       font-weight: 300;
       letter-spacing: .04em;
       padding-left: 0;
       margin-top: 0px;
       margin-bottom: 0px;
       line-height: 1.5em;
   }
   .results_table {
       width: 100%;
   }
   .rcvresults_table_container {
       max-height: 355px;
       overflow-y: auto;
   }
   .votebox_legend {
       width: 100% !important;
   }
   .votebox_legend .non_result_row {
       vertical-align: top;
   }
   .results_row td {
       padding-bottom: 3px;
       padding-top: 3px;
   }
   .results_row td:first-child {
       padding-left: 8px;
   }
   .results_row {
       height: 56px;
   }
   .rcvvotebox-results-cell--check {
       color: #6db24f;
       font-size: 2em;
   }
   .mw-content-ltr td.votebox-results-cell--text,
   .mw-body #mw-content-text th.votebox-results-cell--text {
       font-weight: 300;
   }
   .mw-body #mw-content-text th.votebox-results-cell--text {
       font-weight: 100;
       text-align: left;
   }
   .votebox-results-cell--number {
       text-align: center;
   }
   .image-candidate-thumbnail-wrapper {
       border: 1px solid #999;
       border-radius: 50%;
       display: block;
       height: 50px;
       overflow: hidden;
       position: relative;
       width: 50px;
       margin-right: 10px;
   }
   .image-candidate-thumbnail-wrapper .image-candidate-thumbnail {
       width: 100%
   }
   .results_row.winner {
       background-color: #f4f4f4;
   }
   .non_result_row {
       color: #888;
       font-size: 12px;
       letter-spacing: 0.03em;
   }
   .non_result_row th {
       text-align: left !important;
   }
   .non_result_row div {
       display: inline-block;
   }
   .race_footer {
       display: block;
       margin: 8px auto;
       width: 50%;
   }
   .votebox-results-metadata {
       padding-bottom: 8px;
       padding-left: 16px;
       padding-top: 8px;
   }
   .votebox-results-metadata-p {
       font-size: 12px;
       letter-spacing: 0.03em;
       padding-bottom: 0px;
       margin-bottom: -2px !important;
   }
   .outer_percentage {
       margin: 0px 10px;
       width: 90%;
       background-color: #ccc;
       float: left;
       height: 22px;
       overflow-y: hidden;
       position: relative;
       top: -1px;
       max-width: 75px;
   }
   .inner_percentage {
       display: inline-block;
       position: absolute;
       top: 0px;
       left: 0px;
       height: 100%;
   }
   .inner_percentage.Democratic {
       background-color: #003388;
   }
   .inner_percentage.Republican {
       background-color: #db0000;
   }
   .inner_percentage.Libertarian {
       background-color: #f9d334;
   }
   .inner_percentage.Green {
       background-color: #6db24f;
   }
   .inner_percentage.CrossFiled {
       background-color: grey;
   }
   .inner_percentage, .inner_percentage.Nonpartisan, .inner_percentage.Independent, .inner_percentage.Constitution, .inner_percentage.unknown {
       background-color: green;
   }
   .percentage_number {
       display: inline-block;
       width: 100%;
       color:white;
       position: absolute;
       top: 2px;
       left: 0;
       text-align: center;
       z-index:1;
   }
   .votebox_bp_logo {
       width: 35px !important;
       vertical-align: middle;
       margin-right: 12px;
       position: relative;
       top: -5px;
   }
   .indicate_scroll {
       font-size: 12px;
       margin: 0;
       padding-bottom: 5px;
       font-style: italic;
       color: #0645ad;
   }
   .rcv_select {
       display: inline-block;
   }
   @media screen and (max-width: 411px) {
       .rcvvotebox, h5.rcvrace_header, .rcvresults_text, .rcvresults_table_container, .rcvvotebox_legend {
          width: 95% !important;
       }
       .rcvtooltip:hover span {
         width: 215px !important;
         font-size:0.58em;
       }
    }
   .rcvtooltip {
       color: #000000; outline: none;
       position: relative;
     }
     .rcvtooltip span {
       display:none;
     }
     .rcvtooltip:hover span {
      /* Show the tooltip text when you mouse over the tooltip container */
       visibility: visible;
       display:inline-block;
       position:absolute;
       top: -120px;
       left: 0px;
       right: 0;
       z-index:100;
    }
  .rcvclassic { padding: 0.8em 1em;
   opacity:1 !important;
   background-color:white !important;
   width: 350px;
   color:#888;
   font-size:0.68em;
   text-align: center;
   border: 1px solid #888;
   border-radius: 6px;
 }
   .silhouette-image-container {

position: relative; display: inline-block;

   }
   .silhouette-text-overlay {
       position: absolute;
       top: 0;
       left: 0;
       right: 0;
       bottom: 0;
       display: flex;
       justify-content: center;
       align-items: center;
       background-color: white;
       opacity: 0;
       font-size: 12px;
       text-align: center;
       transition: opacity 0.3s ease;
       border-radius: 100%;
       line-height: 1.1;
       cursor: pointer;
   }
   .silhouette-image-container:hover .silhouette-text-overlay {
       opacity: 1;
   }

General election for Oakland City Council District 7

The ranked-choice voting election was won by Treva Reid in round 4 . The results of Round are displayed below. To see the results of other rounds, use the dropdown menu above to select a round and the table will update.


Total votes: 19,093
Candidate Connection = candidate completed the Ballotpedia Candidate Connection survey.

Endorsements

Do you know of an official or organization that endorsed a candidate in this race? Let Ballotpedia know by email at [email protected].

Additional elections on the ballot

See also: California elections, 2020

What's on your ballot?
Click here to find out using My Vote

Ranked-choice voting

Overview

Beyond the Headlines - Title Banner.png
Beyond the Headlines: What is ranked-choice voting?
View other episodes here.

How ranked-choice voting works

Broadly speaking, the ranked-choice voting process unfolds as follows for single-winner elections:

  1. Voters rank the candidates for a given office by preference on their ballots.
  2. If a candidate wins an outright majority of first-preference votes (i.e., 50 percent plus one), he or she will be declared the winner.
  3. If, on the other hand, no candidates win an outright majority of first-preference votes, the candidate with the fewest first-preference votes is eliminated.
  4. All first-preference votes for the failed candidate are eliminated, lifting the second-preference choices indicated on those ballots.
  5. A new tally is conducted to determine whether any candidate has won an outright majority of the adjusted voters.
  6. The process is repeated until a candidate wins a majority of votes cast.

Example

Assume that there are four candidates for mayor in a hypothetical city. The table below presents the raw first-preference vote totals for each candidate.

Raw first-preference vote tallies in a hypothetical mayoral race
Candidate First-preference votes Percentage
Candidate A 475 46.34%
Candidate B 300 29.27%
Candidate C 175 17.07%
Candidate D 75 7.32%

In the above scenario, no candidate won an outright majority of first-preference votes. As a result, the candidate (Candidate D) with the smallest number of first-preference votes is eliminated. The ballots that listed candidate D as the first preference are adjusted, raising their second-preference candidates. Assume that, of the 75 first-preference votes for Candidate D, 50 listed Candidate A as their second preference and 25 listed Candidate B. The adjusted vote totals would be as follows:

Adjusted vote tallies in a hypothetical mayoral race
Candidate Adjusted first-preference votes Percentage
Candidate A 525 51.22%
Candidate B 325 31.71%
Candidate C 175 17.07%

On the second tally, Candidate A secured 51.22 percent of the vote, thereby winning the election.

Note: The above is a simplified example used for illustrative purposes. Specific procedures vary by jurisdiction and according to the nature of the election (i.e., whether it is a single-winner or multi-winner contest).

Ranked-choice voting in California

At the time of the 2020 election, California did not use ranked-choice voting on a statewide basis. However, four California cities did use ranked-choice voting: Berkeley, Oakland, San Francisco, and San Leandro.

San Francisco voted to adopt ranked-choice voting for municipal elections in 2002. Oakland voted in favor of adopting ranked-choice voting in 2006, while Berkeley and San Leandro switched to ranked-choice voting in 2010.[1] As of the 2020 election, ranked-choice voting was only used to elect local officials in the four cities; elections for state and federal office did not use ranked-choice voting.[2][3]

What was at stake?

Report a story for this election

Ballotpedia researches issues in local elections across the United States, but information availability is a challenge for us in many areas. Please contact us about the issues that impact your local election. Note that not all submissions may meet Ballotpedia's coverage requirements for inclusion.

Candidate survey

Candidate Connection Logo - stacked.png

Ballotpedia invites candidates to participate in its annual survey.
Click here to fill out the survey.

About the city

See also: Oakland, California

Oakland is a city in California. It is the county seat of Alameda County. As of 2020, its population was 440,646.

City government

See also: Council-manager government

The city government of Oakland combines a council-manager system with a strong mayor system. In this form of municipal government, the city council serves as the city's primary legislative body and the mayor serves as the city's chief executive. The mayor, however, appoints a city manager to oversee the city's day-to-day operations and execute city policies.[4]

Demographics

The following table displays demographic data provided by the United States Census Bureau.

   .placeholder {}
   .census-table-container {
       width: 100%;
       max-width: 500px;
       overflow-x: auto;
   }
   .census-table-widget {
       text-align: center;
       border: 1px solid black !important;
   }
   .census-table-header {
       background-color: #334aab;
       color: white;
       padding: 0.5em 1em;
   }
   .census-table-census-item-header {
       text-align: left !important;
       font-weight: normal !important;
       background-color: #D9D9D9;
       padding-left: 0.25em;
       padding-right: 0.25em;
   }
   .census-table-census-item {
       text-align: center !important;
       font-weight: normal !important;
   }
   .census-table-section-header {
       background-color: #f0a236;
       font-style: italic;
   }
   .census-table-source {
       font-size: 80%;
   }
   .census-table-race-disclaimer {
       font-size: 70%;
       border-top: 1px solid #ccc;
   }

Demographic Data for Oakland, California
Oakland California
Population 440,646 39,538,223
Land area (sq mi) 55 155,857
Race and ethnicity**
White 34.4% 56.1%
Black/African American 22.7% 5.7%
Asian 15.8% 14.8%
Native American 0.9% 0.8%
Pacific Islander 0.6% 0.4%
Other (single race) N/A 14.3%
Multiple 8.4% 7.9%
Hispanic/Latino 27% 39.1%
Education
High school graduation rate 84.3% 83.9%
College graduation rate 46.1% 34.7%
Income
Median household income $80,143 $78,672
Persons below poverty level 14.6% 12.6%
Source: population provided by U.S. Census Bureau, "Decennial Census" (2020). Other figures provided by U.S. Census Bureau, "American Community Survey" (5-year estimates 2015-2020).
**Note: Percentages for race and ethnicity may add up to more than 100 percent because respondents may report more than one race and the Hispanic/Latino ethnicity may be selected in conjunction with any race. Read more about race and ethnicity in the census here.


Pivot Counties

See also: Pivot Counties by state

There are no Pivot Counties in California. Pivot Counties are counties that voted for Barack Obama (D) in 2008 and 2012 and for Donald Trump (R) in 2016. Altogether, the nation had 206 Pivot Counties, with most being concentrated in upper midwestern and northeastern states.

In the 2016 presidential election, Hillary Clinton (D) won California with 61.7 percent of the vote. Donald Trump (R) received 31.6 percent. In presidential elections between 1900 and 2016, California voted Republican 53.33 percent of the time and Democratic 43.33 percent of the time. In the five presidential elections between 2000 and 2016, California voted Democratic all five times. In 2016, California had 55 electoral votes, which was the most of any state. The 55 electoral votes were 10.2 percent of all 538 available electoral votes and were 20.4 percent of the 270 electoral votes needed to win the election.

Presidential results by legislative district

The following table details results of the 2012 and 2016 presidential elections by state Assembly districts in California. Click [show] to expand the table. The "Obama," "Romney," "Clinton," and "Trump" columns describe the percent of the vote each presidential candidate received in the district. The "2012 Margin" and "2016 Margin" columns describe the margin of victory between the two presidential candidates in those years. The "Party Control" column notes which party held that seat heading into the 2018 general election. Data on the results of the 2012 and 2016 presidential elections broken down by state legislative districts was compiled by Daily Kos.[5][6]

In 2012, Barack Obama (D) won 58 out of 80 state Assembly districts in California with an average margin of victory of 38.4 points. In 2016, Hillary Clinton (D) won 66 out of 80 state Assembly districts in California with an average margin of victory of 40.3 points. Clinton won 11 districts controlled by Republicans heading into the 2018 elections.
In 2012, Mitt Romney (R) won 22 out of 80 state Assembly districts in California with an average margin of victory of 12.2 points. In 2016, Donald Trump (R) won 14 out of 80 state Assembly districts in California with an average margin of victory of 13 points.


See also

Oakland, California California Municipal government Other local coverage
Seal of California.svg.png
Seal of California.png
Municipal Government Final.png
Local Politics Image.jpg


External links

Footnotes