Heat the olive oil in a small pot over medium heat. Add the onion and garlic, and sauté until tender, about 4 minutes.
Pour in the tomato sauce and stir well. Add the apple cider vinegar. Stir and let the mixture bubble for 1-2 minutes.
Sprinkle in the chili powder, black pepper, cayenne pepper, and powdered erythritol. Stir thoroughly, being sure to scrape the bottom of the pan to fully dissolve the sweetener and distribute the spices.
Add the mustard, Worcestershire sauce, and liquid smoke. Stir until all ingredients are well incorporated. Bring the sauce to a gentle simmer and reduce the heat to low.
Let the sauce simmer uncovered for about 20 minutes, stirring occasionally. Make sure to scrape the sides and bottom of the pan so the sauce doesn’t stick or scorch. The sauce is done cooking when it's thick enough to coat the back of a spoon, its color has deepened, and a noticeable barbecue aroma develops.
Taste the sauce and adjust the seasonings and sweetness to your liking.
Remove from heat and let the sauce rest at room temp for 5-10 minutes. It will thicken as it cools. You can use an immersion blender to achieve an ultra-smooth texture, if you like.
Serve warm or after chilling overnight to allow the flavors to meld.