The top 10 baby names for boys and girls in England and Wales in 2016 have been revealed.

Olivia replaced Amelia at the top of the girls’ charts, while Oliver maintained its number one spot for the fourth year in a row.

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

Four new entries - Felicity, Iris, Luna and Lydia - entered the top 100 for girls' names last year, replacing Bethany, Hollie, Katie and Lacey.

Albie, Arlo, Ezra, Finn, Jasper and Jesse entered the top 100 names for baby boys in 2016, replacing Callum, Connor, Jamie, Kian, Seth and Sonny which were in the top 100 in 2015.

Perhaps in a nod to celebrity trends, Harper, in the 2016 top 100, saw the biggest surge in popularity over the previous 10 years.

Harper Beckham, daughter to David and Victoria Beckham, was born in 2011.

Meanwhile Jaxon, in the top 100 for boys, had risen the most among baby boys over the previous decade.

Top 10 boys' names in England and Wales

1. Oliver 

2. Harry 

3. George 

4. Jack

5. Jacob

6. Noah

7. Charlie

8. Muhammad 

9. Thomas

10. Oscar

Top 10 girls' names in England and Wales

1. Olivia 

2. Amelia

3. Emily

4. Isla

5. Ava

6. Isabella

7. Lily

8. Jessica

9. Ella 

10. Mia