Mayor Johnny Rodriguez Jr., left, addresses a question from council member Juan M. Lecea Jr., right, during a Balcones Heights City Council meeting on Monday evening, March 24, 2025.
Sam Owens/San Antonio Express-News
Mayor Johnny Rodriguez Jr. applauds the pinning of two new police officers during a city council meeting at Balcones Heights City Hall on Monday evening, March 24, 2025.
Sam Owens/San Antonio Express-News
In Balcones Heights, it’s Mayor Johnny Rodriguez Jr. against the city government he was elected to lead.
Rodriguez portrays himself as a good-government reformer and an underdog. But many others inside city hall see him as an intolerant blusterer and an out-of-control micromanager.
Article continues below this ad
In March, the City Council hired a law firm to investigate a slew of workplace complaints against Rodriguez, which accused him of bullying, threatening and demeaning city employees. They also voted 3-1 to bar Rodriguez from parts of Balcones Height’s administrative offices and restricted his contact with city employees while the investigation played out.
The Austin-based law firm released a report in June that detailed some of the mayor’s heated interactions with city employees since he was elected in 2024. Rodriguez allegedly used the N-word “numerous times” during a meeting with city staffers, said he was disgusted by the “lifestyle” of an employee he believed was LGBTQ+ and called city workers “rats” in a voicemail, according to the 35-page report.
More broadly, the report portrays Rodriguez as creating a culture of fear inside city government. He allegedly publicly berated employees and threatened to fire those who spoke out against him — even though under Balcones Heights’ system of government the mayor can’t dismiss municipal workers or department heads.
“The Mayor has created a culture that it is his way, or you will not be here anymore, making everyone fear for their position,” the report states.
Article continues below this ad
But the turmoil, which has been building for months, didn’t derail Rodriguez’s bid for reelection. No one ran against him in the May city election, and he returned to office with 54 votes.
Balcones Heights is smaller than many San Antonio subdivisions. It’s a city of 3,000 people encompassing 0.7 square miles, a island in San Antonio’s Northwest Side.
ALSO READ: UTSA poll: San Antonians split over Mayor Jones’ job performance
Its mayor and City Council members don’t draw city salaries — they’re volunteers. And the city administrator is responsible for managing city operations, which are sparse. The police and fire departments have fewer than 30 employees combined.
Article continues below this ad
While most of Rodriguez’s first term was punctuated by clashes with council members and the police department over officers’ collective bargaining rights and the city’s financial woes, the past four months have seen the fighting intensify, with both sides lawyering up.
City employees filed 20 complaints concerning Rodriguez’s conduct between September 2024 and March 2026, court documents show.
After City Council launched the investigation and sought to rein in the mayor, Rodriguez — who works as a private investigator — sued the city in federal court in San Antonio, claiming his colleagues were retaliating against him for trying to investigate how four devices that police use to write and print traffic tickets had gone missing. He named several City Council members and city officials in the lawsuit.
Rodriguez accused the council of using “void ordinances, physical lockouts, arrest threats, a communication ban, an unauthorized investigation with an extrajudicial gag order to achieve through raw power what they cannot accomplish through law or democracy.”
Article continues below this ad
A federal judge in July denied his request to strike the council’s restrictions on him while the lawsuit plays out.
ALSO READ: County’s lone Republican commissioner walks out mid-meeting after jail dispute boils over
But the city lifted them when it released the investigation report last month. Still, Rodriguez said he’s not pulling his lawsuit.
“This case is not about personality or political disagreement,” he said in a statement. “It is about a simple question: Can a city council use local ordinances, resolutions, and administrative actions to take away powers the Texas Legislature has given the Mayor? I believe the law says no.”
Article continues below this ad
The investigation
On June 22, the council voted to release the report by Lloyd Gosselink Rochelle & Townsend, the firm that the city hired at a rate of $350 an hour to investigate workers’ complaints against Rodriguez.
The report details “inappropriate and discriminatory comments” that Rodriguez made — outlined in nine sections with titles that range from “racial slurs” to “sexual orientation comments” to “glorified landscaper comment.”
Two employees accused Rodriguez of using the N-word “numerous times” in a meeting, where the mayor allegedly explained that during his work as a private investigator, he would change “his dialect and tone to be more personable and get more information” when he was working in Black neighborhoods.
Article continues below this ad
In another meeting, Rodriguez allegedly called an employee a “glorified landscaper,” a comment he said “felt derogatory.” Another worker said the comment made him “feel judged because of how he was viewed with his skin,” according to the report.
Investigators also obtained a voicemail where a man they identified as Rodriguez calls some city employees “rats.”
ALSO READ: San Antonio dealership sued after Mustang buyer dies from carbon monoxide poisoning
“The rats are starting to run the ship, man — they’re taking off, which is good. That means we’re making progress,” he said, as quoted in the report. “So there might be light at the end of the tunnel for you.”
Article continues below this ad
It’s unclear to whom he was speaking. The voicemail was meant for a former employee in the communications department, but investigators said Rodriguez appeared to have been talking to someone else, thinking he hung up the phone.
Much of the report centers on a September 2024 encounter between Rodriguez and then-police chief John Jahanara. Video and audio captured the mayor raising his voice, calling Jahanara disrespectful and insubordinate, saying his “days are numbered” and threatening his job, according to investigators.
Jahanara and five other employees filed complaints to the city about the incident. Nearly two years later, only one of them still works for Balcones Heights, according to the report.
Separately, Zach Baldwin, a former fire captain, told investigators that Rodriguez pulled him out of the council chambers before a September meeting when he was planning on speaking on behalf of the fire department. Rodriguez allegedly directed him to “remind his guys that they are at-will employees, and if they say something he doesn’t like, they are at-will.”
Article continues below this ad
Baldwin told the firefighters at the meeting that Rodriguez had threatened their jobs, and that they should know that before they decided whether to address the council. None chose to speak.
One employee said, “The Mayor can come across as very charming, but then gets angry and starts accusing people of incompetency when he does not get his way.” Another accused him of “bullying and intimidating people.”
“Employees described the Mayor publicly berating employees and department heads, yelling at staff, making derogatory comments about employees’ competence or value, confronting employees in an aggressive manner, and inserting himself into operational and personnel matters in ways employees perceived as threatening or coercive,” the report said.
The lawyers interviewed 15 people as part of their investigation, which took one month. Rodriguez declined to speak with the investigators.
Article continues below this ad
SUBSCRIBE: For unlimited digital access and a paywall-free experience, purchase a digital subscription
Rodriguez said he thinks the employees’ complaints were “used to justify restrictions on powers that state law grants to the office of the Mayor.”
“I fully recognize that my insistence on accountability has not made me popular with everyone at City Hall, but personal disagreements are not legal grounds to strip an elected mayor of statutory authority,” he said.
Rodriguez has urged the city of Balcones Heights to move quickly to slash spending as it grapples with financial distress. In 2021, the city made an unorthodox $5.4 million investment in the Wonderland of the Americas mall, leaving it with $400,000 in annual debt payments and little revenue from the shopping center in return.
Article continues below this ad
The city is entering the upcoming budget season $160,000 in the red — a substantial shortfall for a city with a budget of less than $10 million.
Brandon J. Grable, Rodriguez’s attorney, said the mayor would not “respond point by point to a redacted report,” but he “disputes this report’s characterizations.”
Not the entire council was convinced by the law firm’s findings. Councilwoman Molly Weaver called the findings “hearsay.”
“There was no proof of anything that went wrong. It was just assumptions. It was just somebody venting about the mayor,” Weaver said during the June 22 council meeting. “I’m sorry to say this. He has done nothing bad, other than maybe he doesn’t approach the people like, ‘Would you please do this?’ He tells them, ‘I need to get it done.’”
Article continues below this ad
‘Not my first rodeo’
Most people driving through Balcones Heights wouldn’t notice that they’re entering a city with its own government and police department. On one side of Fredericksburg Road is the Wonderland of the Americas mall and a massive Target. The other side has a Jim’s Restaurant, Luby’s, city hall and a neighborhood of modest homes.
Balcones Heights was established as a city because residents wanted control of the area’s zoning laws in the 1940s, so they voted to incorporate before San Antonio could gobble up the community through annexation. Other suburban cities in Bexar County, such as Olmos Park and Alamo Heights, took the same step for the same reason.
Rodriguez first served as mayor from 2001 to 2004. He was elected again in 2024 by a just one vote.
Article continues below this ad
He publicly butted heads with the police department last year when he put a measure on the ballot to strip the police union of its right to negotiate an employment contract with the city. The measure lost by 21 votes.
Rodriguez lashed out against City Council members when they voted to restrict his powers during the investigation.
“This is not my first rodeo,” Rodriguez said during the March meeting. “And this is not the first time I’ve had aggression and all the ugly things.”
When Rodriguez served as mayor in the early 2000s, Balcones Heights’ police chief wanted the Texas Rangers to investigate grievances against Rodriguez that involved “general impropriety to infliction of emotional stress on city employees that was so severe several employees took anxiety medication,” the San Antonio Express-News reported at the time.
Article continues below this ad
The Rangers declined to look into it, noting that the grievances weren’t allegations of a crime. Rodriguez struck a similar tone back then.
BREAKING NEWS: News travels fast. Keep up with breaking email alerts
“This proves all along what I’ve said, that these are actions of a personal vendetta (against the mayor) and have nothing to do with city business,” he said.
Going to court
Much of the drama — and the lawsuit that followed — came from the restrictions the council imposed in Rodriguez during the investigation.
Article continues below this ad
He was limited to public areas of the Balcones Heights Justice Center; his parking lot key fob was deactivated; he could only work from the mayor’s office at Wonderland of the Americas; and he had to leave the Justice Center no later than 30 minutes after City Council meetings. The resolution also barred him from communicating directly — by email, phone or face-to-face — with city staff.
“You restricted me completely of my entire powers and duties as the mayor of this city in which you are violating the will of the people,” he said in March.
In his federal lawsuit, Rodriguez claimed the complaints against him only started to roll in when he confronted the police chief, Roger Cavazos, about $12,000 worth of devices that police officers use to write traffic tickets that had gone missing. He said the ensuing investigation and restrictions on what he could and couldn’t do as mayor constituted retaliation.
He named in the lawsuit the city of Balcones Heights, all five City Council members at the time, the city administrator, the city attorney, the police chief and the assistant police chief. (He later removed Tracy Ebersole and Weaver from the lawsuit, two council members who have often voted with the mayor, as well as the assistant police chief.)
Article continues below this ad
In its response, the city argued that investigating a mayor who workers have complained about is routine, and the restrictions were only intended to keep him away from the complainants during the investigation.
ALSO READ: Rudy Lopez had Spurs season tickets for 15 years. During the NBA Finals, they were yanked.
“Unlike a regular employment situation, Mayor Rodriguez cannot simply be terminated or let go from his position; he was elected,” the city said in its response. “But such a position does not entitle him, or any other elected official, to engage in harassing, unprofessional, or retaliatory conduct, nor the ability to violate HR policies.”
Two of the complaints against the mayor came in the form of resignation letters.
Article continues below this ad
Baldwin, the firefighter who Rodriguez allegedly castigated outside of a City Council meeting, wrote in his March 9 resignation letter, “I can no longer ignore the fact that my career, mental health, and family’s financial well-being is being put at risk by staying employed with this city.”
Michael Moore, a police officer, claimed that Rodriguez falsely accused him of speaking with City Council members “in violaton of city ordinances” and had asked the city administrator to discipline him for it. He added that he was particularly disturbed by a comment the mayor allegedly made in his presence where he said that someone dying in police custody would be part of “a course of business.”
“Such a viewpoint is antithetical to the oath I took as an officer and the standards I have upheld throughout my career,” Moore wrote on March 2.
In a May 28 court fling, Rodriguez’s lawyer called the City Council a “retaliatory regime.” He cited an incident from days after City Council opened the investigation.
Article continues below this ad
ALSO READ: How your San Antonio City Council district compares to the rest of the city
He claimed that on March 12, when Rodriguez was under the restrictions placed on him during the investigation, the police chief and assistant police chief threatened to arrest him if he didn’t leave the Justice Center, where the city’s administrative offices are located. The mayor was in a meeting related to the city’s investment in the Wonderland of the Americas Mall.
Rodriguez was in a conference room on the second floor of the Justice Center — a violation of the ordinance that barred him from private areas of the building during the investigation.
Rodriguez alleged that police officers went on to lock the doors to restrooms, hallways and other offices, leaving him confined in the room. He eventually left the premises, according to the complaint.
Article continues below this ad
“The Mayor believes his ability to give orders to any City Staff member, go into any secured room in city hall, and perform other administrative functions outweighs the interest of protecting employees from employment harassment, discrimination, and a hostile work environment,” the city’s lawyers wrote in a June 11 filing. “Perhaps in another country, or in an alternate universe, such a proposition may be arguable.”
Legal fees related to the lawsuit could cost the city around $130,000 in the upcoming year, city staff told council members at a July 6 budget workshop, from which Rodriguez was absent.
“It’s not every day we get sued by our mayor,” Councilman Jack Burton said.
Article continues below this ad