The Office for National Statistics (ONS) said most of the contracts were zero hours, under which people are not guaranteed work from one week to the next, but officials pointed out that some workers could have more than one contract.
A study among employers showed that 13% used non-guaranteed hours contracts, rising to almost half in the tourism, catering and food sectors.
More than one in five employers in health and social work reported using them, but they were relatively rare in financial, manufacturing, energy and agricultural services.
The ONS study of 5,000 employers is the biggest of its type yet and showed the average number of hours on the contracts was 25 a week.
Women, under-25s and those over 65 were more likely to be on zero hours contracts. Two-thirds of those counted worked part-time.
Larger employers were more likely to use zero hours contracts.
TUC general secretary Frances O'Grady said: "Insecure work with no guarantee of regular paid hours is no longer confined to the fringes of the jobs market.
"It is worrying that so many young people are trapped on zero hours contracts, which can hold back their careers and make it harder to pay off debts."