Beyonce and her husband Jay Z say they “have been blessed two times over”, using Instagram to announce that she is expecting twins.
“We are incredibly grateful that our family will be growing by two,” the pair wrote, and “we thank you for your well wishes”.
The post, signed “The Carters”, has a photo of Beyonce with a baby bump, wearing lingerie and a veil.
The couple already have a daughter, Blue Ivy, who has just turned five.
Beyonce has been nominated in nine categories for the 2017 Grammy Awards, extending her lead as the most-nominated woman in Grammys history.
The star, 35, is due to headline the Coachella music festival in southern California in April.
The announcement gave no indication of the babies’ due date.
In 2011, Beyonce revealed her pregnancy to fans during the MTV Awards.
She opened her performance of Love On Top by announcing: “I want you to feel the love that’s growing inside of me.”
During the closing bars of the song, she opened her jacket to reveal her baby bump. The camera then cut to Jay Z, who was being congratulated by Kanye West.
Blue Ivy went on to inspire a song on Beyonce’s self-titled album, and appeared several times in last year’s Lemonade.
Jay Z revealed in the lyrics to his track Glory that Beyonce suffered a miscarriage before the birth of Blue Ivy.