Preheat your oven to 350°F (175°C). Line a baking sheet with parchment paper.
In a large bowl, whisk the almond flour, baking powder, salt, garlic powder, and onion powder until evenly combined.
In a separate bowl, beat the cream cheese until smooth.
Add eggs, melted butter, and apple cider vinegar. Whisk until the mixture is creamy and lump-free.
Pour the wet ingredients into the dry ingredients. Stir with a spatula until a thick, tacky dough forms.
If using Parmesan or mozzarella, fold it in now.
Let the dough rest for 3–4 minutes. This helps the almond flour hydrate and makes shaping easier.
Lightly oil your hands and divide the dough into 8–10 equal portions. Roll each into a ball and place on the prepared baking sheet, leaving space between them.
Lightly flatten the tops for a classic roll shape. Sprinkle with sesame or poppy seeds if you like.
Bake for 16–20 minutes, until the tops are lightly golden and the centers feel set. Do not overbake or they’ll dry out.
Cool on the baking sheet for 5 minutes, then transfer to a wire rack.
Serve warm with butter.