A smart home application can run without to use a cloud server. The smart home server can stay at your home and will connect to your devices only. Google Nest is a smart home application by Google Cloud server. A lot of private date will be outside.
Smart Home is just a part of the IoT. IoT can be everything up to your electricity meter or your car. However, a IoT application for smart metering is may not useful for smart home.