The mass die-off of thousands of fish, which sparked a political row between Poland and Germany, has been blamed on toxic algae.
Nearly 250 tonnes of dead fish were recovered in August from the Oder river, which runs through the two countries.
There had been accusations that a chemical spill had caused the die-off, with Poland and Germany denying any responsibility.
But on Thursday, Polish authorities said that toxic algae -- worsened by high summer temperatures and low water levels -- was behind the incident.
Various factors "led us to conclude that the fish deaths were probably caused by the toxic effects of an algal bloom", said Agnieszka Kolada from the Polish Institute of Environmental Protection.
The micro-algae at issue -- known as golden algae -- is found in estuaries, mainly near the sea, and "had until now never been detected in Poland", she told reporters.
She added that the water quality of the Oder has been poor "for years".
Poland is due to release a full government-commissioned scientific report on the die-off on Friday.
"The fish deaths were neither caused by heavy metals, nor pesticides, nor petroleum substances," according to a presentation on the report.
The mass die-off was first detected by locals living along the 840km waterway, who were then warned not to swim in the river or to touch it.
The stench around the waters was so bad that some workers deployed to remove the fish vomited during their work, locals told Reuters.
In August, Poland's environment minister accused Germany of spreading "fake news" about the disaster after it reported on high pesticide levels in the waterway.
"In Poland, the substance [pesticide] is tested and detected below the threshold with no effect on fish or other species and no link to die-offs," Anna Moskwa wrote on Twitter.
Piotr Nieznanski, conservation policy director at WWF Poland, had also speculated that a toxic chemical was released into the water by industry,