Gwinnett County will spend nearly $32 million to settle a dispute with its 15 cities over who provides and pays for police, fire and other services.

The agreement, approved by the Gwinnett County Commission and city councils around the county Tuesday, puts an end to what city officials have called “double taxation.” City residents won’t pay county taxes for services they already get from city governments.

The settlement still must be approved by a judge. But local officials hailed it as the end of a three-year court battle.

“Hopefully today will be a new beginning for the cities and county to continue working as one for the betterment of our community as a whole,” Snellville Mayor Kelly Kautz said.

The agreement was signed by county and city officials Tuesday night amid a celebratory atmosphere at the Gwinnett Historic Courthouse in Lawrenceville.

Under the agreement, Gwinnett will make one-time payments to the cities this year totaling about $10 million. In addition, it will pay about $3.1 million a year for seven years, beginning this year.

The roughly $13.2 million the county owes this year will come from reserve funds. County Commission Chairwoman Charlotte Nash would not say how the county will make future payments.

“We are limiting our comments at this time because the litigation remains active,” Nash said. “However, we plan to fully discuss the details once the court has acted on the proposed consent order.”

But it’s clear the deal is a financial windfall for the cities.

City officials have complained for years that their residents pay county taxes for services they already receive from the city government. Nine Gwinnett cities, for example, have their own police departments. But city residents also help pay for the Gwinnett County Police Department.

Gwinnett officials have said city residents benefit from county services. For example, they said, police pursue criminal gangs in cities as well as in unincorporated areas.

Three years ago the dispute wound up in Superior Court. Last September Enotah Judicial Circuit Court Judge David Barrett ruled that city residents don’t have to pay for services that primarily benefit residents of unincorporated Gwinnett.

Gwinnett appealed the ruling, but negotiations continued. On Tuesday, county and city officials approved a settlement that will require Gwinnett to stop charging city residents property taxes and other fees and taxes for services they already get from cities.

To do that, Gwinnett must create four special service districts:

-- A fire and emergency medical services district to pay for those services in all of Gwinnett except the city of Loganville, which has its own fire department.

-- A separate Loganville EMS district. The county will continue to provide EMS service to Loganville and will charge city residents for it separately.

-- A police district that includes unincorporated Gwinnett and the cities of Berkeley Lake, Buford, Dacula, Grayson, Rest Haven and Sugar Hill, which do not have their own police departments.

-- A district for planning and zoning, code enforcement and related services that includes only unincorporated Gwinnett.

Under the terms of the settlement, the districts would not be created until Jan. 1, 2013. Nash said tax rates will not change this year, but she declined to say what would happen to taxes in different districts next year.

City officials also avoided discussing details of the settlement, but both sides expressed relief the sometimes contentious dispute appears to be over.

“The bigger picture is that the relationship between the county and cities will be normalized,” Norcross Mayor Bucky Johnson said.

At least one resident can’t believe the dispute lasted as long as it did.

“I’m amazed that it’s taken them this long to come to an agreement over something that’s this important,” said David Jones, a Lawrenceville citizen watchdog. “It really did make them look pretty childish.”

The story so far

Gwinnett County and its 15 cities have been fighting in court for three years over who provides and pays for police, fire and other services. Last September a judge ruled that city residents don’t have to pay for services that primarily benefit residents of unincorporated Gwinnett. The county appealed, but on Tuesday the parties announced a settlement. Gwinnett will pay $32 million over the next seven years to settle the lawsuit and establish special funds to pay for various services.

What's next: Gwinnett and its cities will submit the settlement to a judge for approval. If he signs off, the county and cities in coming months will finalize many of the details.