On 16 October, Brazil’s Supreme Electoral Court unanimously upheld an order requiring Meta, the owner of Facebook, Instagram and WhatsApp, to ensure equal treatment of presidential candidates until the end of the second round.
On the same day, the newspaper Folha de S.Paulo published internal messages in which employees admit that the restrictions affected President Luiz Inácio Lula da Silva’s campaign and describe how his opponent Flávio Bolsonaro’s profile was suggested to users, which the court had ruled illegal.
The court is now requiring the company to examine its own systems, correct errors and submit the data on which it will base an assessment of its actions.
Lula and Senator Flávio Bolsonaro, son of former president Jair Bolsonaro, will proceed to the second round on 25 October after a closely fought first vote. Jair Bolsonaro is serving a sentence of 27 years and three months, handed down in September 2025 for attempting a coup after losing the 2022 elections.
On 4 October, Flávio won approximately 47 per cent of the vote and Lula 45 per cent. With such a narrow margin, every unjustified ad ban and every algorithmic boost that brings an additional audience to a candidate carries significant weight.
Employees warned as the campaign lost time
Meta denies political interference. “Brazilian voters deserve facts, not a political narrative constructed by combining unrelated technical issues,” the company stated, asserting that the internal correspondence referred only to the severity of already known malfunctions and the speed of their resolution.
For almost 24 hours, from 9 to 10 October, Lula’s campaign could not pay to boost existing posts on Instagram.
According to Meta, a system change caused a glitch that affected thousands of advertisers in multiple countries and was fixed by rolling back the previous version in the early hours of 10 October.
Previous ads continued to run, and posting new ads through the advertising system remained possible. Internal messages show that employees warned engineers about the urgency of the problem and criticised the slow response, as the glitch hit the campaign in the final stage of the election.
Brazilian rules require official profiles and channels of candidates to be excluded from automatic recommendations
Meta also admitted that it mistakenly suspended Lula’s advertising account for just over an hour on 23 September, after its anti-fraud system flagged his ad as a possible misrepresentation of a state welfare programme. The official profiles on Instagram and Facebook remained accessible at the time.
Meta’s AI tool, available via WhatsApp, rejected some requests to create Lula’s election images, while similar material for Flávio could still be generated for another day.
Meta claims that the protection system did not always recognise the candidate when only the name and election number were combined in the request, so the same limitation applied to Lula. The company says it fixed the bug on 14 October.
Brazilian rules require official profiles and channels of candidates to be excluded from automatic recommendations, so their reach depends entirely on user choice.
The court ruled that recommending Flávio’s posts was illegal, and Meta did not explain that part of the case in its public response.
The NetLab laboratory at the Federal University of Rio de Janeiro did not find recommendations for the candidate’s videos on Instagram in its monitoring on 3 and 4 October, but did find them on TikTok and YouTube, so the disputed recommendations by Meta are not part of that finding.
Meta given a deadline to compensate for lost advertising
Judge Marco Aurélio Bellizze’s order of 15 October, upheld the following day, requires Meta to compensate by 21 October for the paid ad distribution Lula’s campaign had booked but never received. A daily fine of 500,000 reais (around $98,000) has been set for non-compliance.
Under the ruling, any restrictions on ad orders must be subject to human review, while automated blocks must be assessed within two hours and reported to the court.
The order gave Meta 24 hours to examine 255 profiles identified in a report by Democracia em Xeque, and 48 hours to check AI tags on 1,204 posts.
The institute described a network that mass-published AI-generated content, promoted the Bolsonaro family, and attacked Lula and the Supreme Court.
Meta’s systems were wrongly limiting permitted advertising and failing to stop recommendations covered by the ban
By its count, the posts garnered 58 million views between 15 August and 15 September, including repeat views by the same users.
Almost half the posts were shared across multiple profiles, thereby combining their reach. Investigating individual posts in isolation would precisely miss that coordinated distribution network.
At this stage, Bellizze has not established intentional manipulation in favour of either candidate. The company’s systems were wrongly limiting permitted advertising and failing to stop recommendations covered by the ban.
Meta’s technical records may show the duration, scope and reasons for those decisions, but their initial analysis is again being carried out by the very company whose conduct is under review.
Ad checks also failed on the day of the vote
In researching illegal advertising from abroad, NetLab analysed 1,613 political and election ads published between July and September. Crucially, 99.5 per cent of these ads were paid for in US dollars.
Where the origin of payment was known, 98.1 per cent came from the US, while information about the payer was missing for one third of the entire sample. The data shows where the payments came from, but the ultimate buyers remain unknown.
The ads generated up to 171.1 million impressions, with estimated spending of around two million reais, approximately $400,000. In 22.7 per cent of cases, signs of coordinated action by undisclosed actors were detected.
These ads promoted or attacked different candidates, sometimes with conflicting messages. Some of the material was only retrospectively labelled as political or removed, long after it had reached users and generated revenue for the platform.
NetLab found 568 illegal ads on Meta’s platforms
During monitoring of the first round, when paid advertising had to be suspended, NetLab found 568 illegal ads on Meta’s platforms. Six ads posed as electoral court notices and offered mobile phone voting.
The laboratory also found that Meta’s public ad library shows some posts as inactive, while the data provided by the platform to researchers still lists them as active.
In a separate test published on 25 August, Amnesty International had eight of its 14 election ads approved. The rest were stopped because of identity verification requests, and none were rejected for fraudulent content. Approved ads were withdrawn by researchers before publication.
Meta’s solution also affects those who are not candidates
The company announced on 16 October that it will introduce a list of authorised election advertisers from 19 October. It claims that its system places election propaganda in the same broad category as other political and social ads and that it cannot quickly distinguish between them under Brazilian legal rules.
The proposed change would also cover ads from media, non-governmental organisations and state institutions, while ads without paid distribution would remain available.
The Electoral Court has to deal with the consequences of a technical procedure that it did not design
This consequence stems from Meta’s chosen method of enforcing the order. The court has limited unauthorised purchases of election propaganda, and the company is announcing that it will block a wider group of ads because its product classifies them together.
It also warns that the new system may wrongly block authorised campaigns. The Electoral Court therefore has to deal with the consequences of a technical procedure that it did not design, in a week when there is very little time left for corrections.
The dispute will continue into the second round
In January 2025, Meta founder Mark Zuckerberg, announcing the abolition of independent fact-checking in the US, accused Latin American courts of secretly removing content and asked Washington for support against pressure from foreign governments.
In July 2025, the US administration opened a trade investigation into digital services and sanctioned Supreme Court Justice Alexandre de Moraes.
On 20 November of the same year, Trump lifted an additional 40 per cent tariff on Brazilian beef, coffee and other foodstuffs during negotiations with Lula and efforts to lower US food prices.
Sanctions against the judge were lifted on 12 December 2025. Lula now claims that the US is trying to influence the election in Flávio’s favour, and his camp has announced a complaint against Meta to the Organisation of American States.
Both campaigns are entering the finale amid a publicly documented dispute over the operation of the platform - Flávio Bolsonaro
Until the vote, quick fixes and new data requests are more likely than a completed investigation into the company’s overall pattern of conduct.
The deadline for reimbursement of paid distribution is 21 October, the ban on new content with artificially created or altered images or voices of candidates and public figures begins on 22 October, and voters cast their ballots on 25 October.
The proposed penalty gives the court the ability to respond to non-compliance with the order during the campaign itself, independently of the slower assessment of political intent.
After the defeat in 2022, Bolsonaro’s camp contested the result, and on 8 January 2023 his supporters stormed Congress, the presidential palace and the Supreme Court in Brasília.
Now both campaigns are entering the finale amid a publicly documented dispute over the operation of the platform. The losing party will be able to use this dispute to challenge the terms under which the vote was held, even without evidence that it changed the outcome.
After the election, demands for the court and independent experts to gain immediate access to data on referrals, blocks and ads are likely to increase.
Meta can seek political support from Washington in its dispute with Brazilian courts, but the partial withdrawal of US measures in 2025 showed how much that support depends on trade and diplomatic agreements.
The company can hardly rely on the US permanently bearing the economic costs of its conflict with Brazil. Brazilian courts have already shown how far they are willing to go. The social network X was blocked in Brazil for 39 days in 2024, until Elon Musk paid fines and complied with court orders.
Meta is therefore unlikely to engage in open conflict in one of its largest markets. It is more likely that it will provide the court with the data it requests in individual cases, on condition that these remain confidential, and refuse to make them available to researchers and the public.
Before the 2028 local elections, the Electoral Court is likely to turn the obligations now imposed on Meta into general rules for all platforms. Meta would then have to show, before the vote, how its systems handle candidates, instead of explaining this only when a dispute breaks out.