Image copyright Getty Images Image caption Names like Arlo and Luna are growing in popularity

Olivia has replaced Amelia as the most popular baby girls' name in England and Wales, while Muhammad has entered the top 10 most popular boys' names.

The Office for National Statistics (ONS) said Olivia had reclaimed the top spot it previously held between 2008 and 2010.

Harper has seen the biggest rise in popularity for girls while Jaxon is growing among boys.

Results were based on names given on birth certificates, the ONS said.

Oliver was still the most popular boys' name across most of England and Wales, apart from in the North East where it was Harry, and in London and the West Midlands, where it was Muhammad.

Although Olivia was top overall for girls, Amelia was still most popular in Yorkshire and the Humber, the East Midlands, West Midlands and London.

*The ONS figures do not include names given to fewer than three babies in England and Wales as a whole in order to protect the confidentiality of individuals.

No baby Nigels in 2016 (despite Brexit)

Do we judge people by their name?

More girls named Arya than Mary in 2016

Fifth of parents regret their child's name

Image copyright Getty Images Image caption Could the rise in popularity of the name Harper be down to the trend-setting Beckhams?

Harper, the name given by David and Victoria Beckham to their daughter, has seen the biggest growth in popularity.

In 2011, the year she was born, there were 42 girls with the name in England and Wales. By 2016 it was the 44th most popular girls' name, given to 1,256 babies.

Muhammad replaced William in the top 10 names for boys, while Poppy dropped out of the top 10 for girls, making way for Lily.

Image copyright Getty Images Image caption John Boyega and Daisy Ridley's Star Wars characters may have inspired some names

The new Star Wars films may have had an effect on some parents' choices.

Finn scraped into the top 100, a rise of 26 places, as 650 boys were given the name of John Boyega's character in The Force Awakens.

Rey, the name of Daisy Ridley's character, was the choice for 17 girls.

Jaxon is now the 51st most popular boys' name, with 1,161 babies in 2016, rising 682 places in the past decade.

Arlo was the biggest climber among boys in the past year, rising 53 places to number 49.

And Luna climbed 52 places to number 78 for girls.

Top 10 girls' names in England and Wales

1. Olivia - 5,017

2. Amelia - 4,777

3. Emily - 3,551

4. Isla - 3,476

5. Ava - 3,285

6. Isabella - 2,729

7. Lily - 2,722

8. Jessica - 2,703

9. Ella - 2,702

10. Mia - 2,662

Top 10 boys' names in England and Wales

1. Oliver - 6,623

2. Harry - 5,284

3. George - 5,263

4. Jack - 4,751

5. Jacob - 4,485

6. Noah - 4,305

7. Charlie - 4,190

8. Muhammad - 3,908

9. Thomas - 3,898

10. Oscar - 3,894

Why it's hard to be a Kevin in France

For more stories from the BBC England Data Unit visit our Pinterest board

Image copyright Getty Images Image caption George grew in popularity as a name after the heir to the throne's birth

Charlotte was the 12th most popular name for girls, with 2,596 babies given the name. This is up 13 places on 2015 when Princess Charlotte, now the fourth in line to the throne, was born.

Her brother Prince George's birth appears to have had a positive effect on the popularity of his name as well.

George was the 10th most popular name for boys in 2013, the year he was born, rising to seventh in 2014 and fourth in 2015.

In 2016 5,263 boys were named George, making it the third most popular.

Image copyright HBO Image caption Khaleesi was the 615th most popular name with Daenerys also appearing in the list

And on the subject of thrones, there were 69 baby girls named Khaleesi, the word for a queen invented by George R R Martin in his Game of Thrones series.

This was one more than 2015. A further seven were named Kaleesi, while four were called Daenerys, the birth name of the character known as Khaleesi and played in the television adaption by Emilia Clarke. Khaleesi first appeared in the list in 2011, the year the TV series started, when there were nine girls with the name.

The ONS said the statistics were compiled based on the exact spellings given on birth certificates, but did not take into account babies that were stillborn.

Spokesman Nick Stripe said: "With over 696,000 babies born in England and Wales in 2016, and nearly 64,000 different names chosen for them, it's interesting how relatively stable the top 10 names have been over recent years.

"It is as you move down the rankings that you begin to notice social and cultural changes being reflected in name choices. Harper was the girls' name in the top 100 in 2016 with the biggest rise in popularity over the previous 10 years, whilst for boys it was Jaxon."

The figures also show parents are choosing more and more diverse names.

In 1996 there were fewer than 5,000 girls' names, rising to more than 7,500 in 2016. For boys there were 3,714 names published in 1996, rising to 6,247 by 2016. The figures only include those where at least three babies share the name.

Report by Daniel Wainwright. Interactive tool by William Dahlgreen.