Factorio server-settings.json generator
Factorio's server-settings.json is strict JSON, which is unforgiving in one specific way that catches almost everyone: trailing commas.
Start from a preset
Visual Settings
server-settings.json
How server-settings.json syntax works
Standard JSON rules apply with no extensions. No comments of any kind, no trailing comma after the last item in an object, strings double-quoted, numbers and booleans unquoted. Quoting a number is a real error here rather than a harmless one — max_players written as "10" is a string and will not be accepted where a number is expected.
The mistake that costs people hours
max_players set to 0 means unlimited, not closed. People set it to 0 intending to block joins and get an uncapped public server instead. If you want the server closed, use the visibility settings or a password rather than the player limit.