Perry described her fifth album Witness as a "360-degree liberation" record, with "Bon Appétit" representing a "sexual liberation". She also called it a "pretty sexual" song that was part of "some of that good 'ol Katy Perry, fluffy stuff that you love so much". "Bon Appétit" is a disco-infused dance-pop and trap-pop song with a duration of 3 minutes and 47 seconds. According to Hugh McIntyre from Forbes, the track's rhythm features "breezy, summery, 90's-invoking vibes" and a beat that gradually builds, eventually becoming "undeniable". MTV writer Sasha Geffen calls the track, "a smorgasbord" of double entrendres with food. In the song, Perry sings "'Cause I'm all that you want, boy/All that you can have, boy/Got me spread like a buffet/Bon a, Bon appétit, baby". Christopher R. Weingarten of Rolling Stone found the song similar to the music of AC/DC.
The song is written in the key of ♭ minor with a tempo of 106 beats per minute in common time. Perry's vocals span from G♭3 to E♭5.