BlackBerry released the earnings results from the fourth quarter of its fiscal 2016, which ended Feb. 29, before opening bell this morning. The struggling Canadian smartphone maker reported non-GAAP losses of 3 cents per share, against the consensus estimate of 10 cents per share in losses, and $487 million in revenue, compared to the consensus of $563.2 million.

BlackBerry Logo

BlackBerry grows software revenue

GAAP sales were $464 million, while GAAP losses were 45 cents per share. For the non-GAAP revenue estimate listed above, the breakdown was about 32% for software and services, 29% for software access fees and 39% for hardware and other revenue. Adjusted EBITDA was $78 million in the fourth quarter, while the cash and investments balance was at $2.62 billion at the end of the quarter.

One of the key metrics in focus was software and services revenue, and BlackBerry said it grew 106% year over year to $153 million. BlackBerry said it had more than 3,600 “enterprise customer wins” in the fourth quarter and that about 70% of software revenue during the quarter was recurring.

“We have clearly gained traction and market share in enterprise software,” said CEO John Chen in a statement this morning. “We more than doubled our software and licensing revenue in Q4 and exceeded our target of $500 million for the full year. Looking to FY 2017, our strategy is on track and our growth engines are in place to continue to generate above market growth in software and achieve our profitability objectives.”

The GAAP gross margin was $210 million or 45.3% of revenue. Excluding the resource alignment program charges, the non-GAAP gross margin was $237 million or 48.7% of revenue. Charges related to the program were about $180 million pretax.

BlackBerry expects 30% software growth in 2017

BlackBerry management projects about a 30% increase in software and services revenue for 2016 and continues to expect positive free cash flow and adjusted EBITDA for the year.

Shares of BlackBerry ticked slightly lower in after-hours trading last night in New York, falling 0.12% to $8.08 per share. They were inactive in premarket trading this morning.