Thread revival!
Anybody who is struggling with E90 320D fuel consumption should have their coolant operating temperature checked with the possibility that their thermostat has failed.
The thermostat usually fails in the open position which results in the car running cold and not being able to get up to operating temperature.
The coolant will tend to stabilise around 74 degrees celcius in stead of the set point and desired 88-90 degrees celcius with a failed thermostat condition.
The thermostat failing will not necessarily trigger an engine warning light and thus diagnostics fault code reading could present a healthy car. However, by reading the live datastream of the coolant temperature, it is easy to identify that the thermostat has failed.
An engine that is not able to reach operating temperature will suffer in the fuel economy department.
Fuel consumption can be affected by up to 50% (in my experience) with this condition.
The E90 does not have a temperature gauge like the E46 and thus it is difficult for the average Joe to identify that their coolant isn't reaching operating temperature however, poor fuel consumption is a symptom of the issue.