Tata Motors has posted an annual loss for the year to March 2009 of INR25bn (US$520m) versus net profit of INR21.7bn a year ago.