The ONS, which questions workers to get to the results, said the rise in the contracts seen in previous years has "likely" to have been driven by more workers being aware of the term “zero-hours contract” as covered widely in the media.
“Coupled with figures we’ve already seen from the Labour Force Survey showing a small fall in the number of people who say they’re on zero-hours contracts, it seems possible that the trend towards this type of work has begun to unwind,” said ONS statistician David Freeman.
But Labour, which pledged to ban zero hours contracts if it got to power in the last election, said the figures remain a “national scandal”.
Shadow Business Secretary Rebecca Long-Bailey said: "It is a national scandal that there are 1.4 million contracts that don’t guarantee minimum hours, with people stuck in limbo in insecure work, not knowing how much they'll earn from week to week, unable to budget for basic necessities and unsure if they can even pay the rent.
“The Government urgently needs to get a grip on the broken labour market which is rigged against workers and adopt Labour's policy to ban zero-hour contracts."
The ONS data was published on 17 September covering the period from May to June 2017. The equivalent results for the same period in 2016 was 1.7 million, representing an 18% fall in the number of the contracts. However, the numbers still represent 5% of all employment contracts for both years.
People on zero-hours contracts are more likely to be young, part-time, women or in full-time education when compared with other people in employment.
On average, a person on such a contract usually works 26 hours a week.
Just over a quarter of people (26.6%) on a zero-hours contract want more hours, with most wanting them in their current job, as opposed to a different job which offers more hours, finds the ONS. In comparison, 7.2% of other people in employment wanted more hours.