Either the gauge or the sending unit is faulty.
The most common reason for the fuel gauge in an Impala to stop at half full is a bad fuel sensor. The sensor is mounted inside of the fuel tank.
More often than not, a fuel gauge problem is usually a faulty fuel gauge sending unit in the fuel tank.
More than likely the fuel gauge sending unit inside the fuel tank is shot.
Most Likly a fuel sender problem
If you are sure the tank is empty and the fuel gauge is reading half full, then there is something wrong with your fuel level sending unit located inside the tank on the driver's side of the vehicle. Probably the variable resistor.
A faulty fuel gauge sending unit.
It's a GM
Bad sending unit. This is what reads the tank level and sends it to the gauge.
The sending unit is either defective or it is hanging on something in th tank.
i would recommend getting gas when that happens. perhaps take it to the mechanic to fix the gauge
The gauge or sensor needs to be replaced.
If the guage is registering full all or when under half a tank it is a faulty sending unit. Cost is in the hu8ndred to repair.