The appeals court in Versailles said Kerviel, 39, was "partially responsible for the loss", which brought the French banking giant to the brink of bankruptcy in 2008.
The court cited "deficiencies" in the bank's organisation and safeguards which it said "contributed to the loss" and therefore limited Societe Generale's right to compensation.
Kerviel, who has called for a retrial, said after the verdict that "the struggle continues", adding: "I still believe I owe nothing to Societe Generale.
For his part, Jean Veil, a lawyer for Societe Generale, said the ruling was "completely satisfactory".
The court could have ordered Kerviel to pay the entire €4.9 billion or not a single centime -- which would have been a humiliating defeat for the bank.
Kerviel, who was convicted of breach of trust, forgery and entering false data for the trades, was sentenced to five years in prison, two of which were suspended.
In total he actually spent only 150 days in prison.
He has always maintained that his bosses turned a blind eye as long as the profits kept rolling in.
Earlier Friday Kerviel told French radio he had promised his mother that he would "restore honour to the family name that was stolen... more than eight years ago".
In a civil case, Kerviel was first ordered to pay for the entirety of the enormous losses but that was quashed on appeal, with judges ruling that the bank's internal oversight mechanisms had failed.
Friday's verdict follows hearings at the Versailles appeal court in June in which lawyers for Societe Generale made a fresh attempt to claw back the cash.
The bank said it had "always recognised the weaknesses and faults in its system of checks", but that Kerviel was responsible for the trades.
Scapegoat or villain?
In June, Kerviel finally had something to celebrate when a Paris labour tribunal ordered Societe Generale to pay him €450,000 in damages, saying he had been fired "without genuine or serious cause". The bank has appealed.
Kerviel, the son of a village blacksmith from the far west of rural Brittany, divides opinion in France.
Many believe he is a scapegoat while others think he should pay the price for his actions.
He has never denied taking risks -- at one point staking €50 billion of the bank's money -- but maintains that his bosses were just as much at fault as he was.
Although he was paid a relatively modest salary, Kerviel is alleged to have made Societe Generale €1.9 billion before the financial crisis accelerated his losses.
Since his release from prison, Kerviel has reinvented himself as a computer security consultant and a trenchant critic of "casino capitalism", even meeting Pope Francis after making a pilgrimage to Rome to protest against the "tyranny of the markets".