Bebe Rexha suffered a blow to her body confidence after seeing pictures of herself on a beach in a swimsuit.

The 31-year-old singer was upset when pictures of her on the beach in Cabo San Lucas, Mexico, wearing a black Versace one-piece while holidaying with boyfriend Keyan Safyari, appeared online, and Bebe suggested that the images had been altered.

She took to her Instagram Stories and shared a series of videos of herself posing in the same swimsuit in her living room, telling her 10.5 million followers that the paparazzi pictures were seemingly fake.

"OK, so I went to Mexico with my boyfriend and paparazzi posted some pictures of me and I want to show you what I really look like," Bebe said in the footage. "I've definitely got thighs, I got ass. But here's what I f**king look like in my bathing suit... Here's my body, no filters, OK?

"I got ass, I got thighs, OK, but not those nasty ass pictures they posted, what the f**k?”

The star went on to shut down any plastic surgery speculation, and said she's been struggling with body confidence, which is made worse when unflattering images are posted online.

"It's just really hard," Bebe continued. "Because I find it hard to love myself sometimes. And when you see yourself looking like s**t (in tabloid photos), it's like, yes, I got stretch marks, let me show you. I got stretch marks, I got cellulite, all of the above. But I don't do surgery, I've never touched my body, never done lipo(suction), never done any of that."

The Meant to Be hitmaker concluded by saying she has come to accept her body over the years, and said she's just naturally curvy.

"I mean, look, I'm thick (big), OK? I'm a thick girl. That's how I was born," Bebe quipped.