If you see a setting, you’ve lost
In rare cases they are needed, most of the time they’re not.
Making these kinds of choices is your job as a designer. I always try to avoid offering a setting when making a choice is better for the majority.
Settings are different from personalization and configuration.
Personalization allows the user to customize a certain part of the service, but it still works the same way for all users. Allowing users to upload a profile picture is not a setting, it’s personalisation.
Configuration modifies the system so that it works in the users context. This is typically only done once during setup, but should still be automated if at all possible.
A setting makes the product work differently for different groups of users. This creates additional complexity. Adding a setting with two options doubles the number of outcomes the system has (this of course grows exponentially).
This makes it harder for your users to fully understand what is going to happen and in the worst cases it will become very confusing for your engineers as well.
Avoid them if possible and force yourself to make a choice.