Preheat oven to 350 degrees F.
in a large bowl, or bowl of a stand mixer, cream together butter and sugar until very light and fluffy, approxiately 3-4 minutes. Add egg and vanilla and mix until well combined.
Add one cup of properly measured flour*, along with the baking powder and salt, to the mixture. Stir well to combine. Add one additional cup of flour and stir to combine. Add final cup of flour and stir to combine. This dough can be very thick, dry and hard to mix, but the dry texture is what helps prevent the cookies from spreading. If the dough seems too dry, sprinkle a few drops of water on it, but remember, it should be a dry dough.
Prepare a clean surface, making sure it's fully dry. Sprinkle with additional flour. Roll dough to approximately 1/4" thick. If you have cracks, you can dip your finger into water and then smooth them out. Once rolled out, cut with cookie cutter. Transfer to a baking sheet, leaving approximately 1" space around each cookie as to not overcrowd them.
Bake for approximately 8-10 minute, until edges start to lightly brown. For soft cookies, make sure to not overbake, pulling them from the oven as soon as those edges start browning. Let cookies cool on baking sheet for five minutes, then carefully transfer with a spatula to a wire cooling rack. Allow cookies to cool completely prior to decorating.