João Pedro made his senior debut with Santo André on 13 September 2019, starting in a 2–0 Copa Paulista home win over Inter de Limeira. In June 2020, he moved to Portuguesa Santista,[2] and scored his first goal on 11 November of that year by netting the opener in a 1–2 loss at São Bernardo.
On 15 February 2021, João Pedro was loaned to Série B side Vitória, with a buyout clause.[1] He made his club debut two days later, starting in a 3–3 Campeonato Baiano away draw against UNIRB.[3]
On 2 December 2021, despite suffering team relegation, Vitória exercised the buyout clause on João Pedro's contract, and he signed a contract with the club until 2024.[4]