In general, if there are no member properties, then you can use an object instead of a class, which make it clear there is no point in creating multiple instances.
You would use a companion object if you do not want to expose certain constructors, fields or properties of a class. These members can have private access. The companion object can access them, allowing you to control how these members are used.