It's been more than 2 years since I installed Home Assistant on my Raspberry Pi, and in this time, I've bought over 80 smart devices for my home. Some of them were good ideas, they saved me money and time on the long run and I now see them as an investment. Some of them were not that good, either they were unusable from the start, or maybe I haven't used them as much as I thought. In order to save you the trouble, I designed 6 questions that you should ask before buying a smart device, and I also added examples from my own experience.
1. Is the device compatible with Home Assistant?
The good news is that most of the devices out there can be integrated with Home Assistant, one way or the other... The easiest way to answer this question is to search your device in this list of integrations: home-assistant.io/integrations
If your device is there, then you can use it from Home Assistant in some way (we'll deal with this in the next question). However, not every integration is registered there, so you will have to Google it and see if there is some custom repository on Github that might provide the integration. For example, I have an Oura ring which is not in the list of supported integrations, but a quick google search will show this Github repository. The only disadvantage is that the installation is a bit more complicated than the official integrations, but it works.
I have bought a few devices without looking at this, or without paying too much attention, and I had to accept the fact that I can't return them. One example is a set of Xiaomi devices(sensors, button, etc.) that also had a Zigbee gateway. I looked on the list of integrations and saw that the Xiaomi gateway is supported, but I didn't read the article well enough. Only when the package arrived and I tried to configure the gateway I found out that there were multiple models (depending on the market: Chinese, European, US, etc.) and mine was one of the unsupported models . In the end I had to keep the sensors and buy a CC2531 device in order to create my Zigbee network and pair them, but I lost some money in the process.
2. Does the integration satisfy my needs?
Some devices can be integrated in HA, but only partially. A good example would be my LG dryer or my Samsung washer. Both can be integrated in Home Assistant, but they are read-only integrations. This means that I can use their official app to start them, choose washing/drying program, create a schedule, etc... but in Home Assistant I can only view what they are doing. This can be useful too, but I wish I had read the documentation better before buying these devices because I would've liked to have more control over them from HA.
3. Do I have the required skills to setup the device?
Some devices are easy to setup and configure, but for some of them you need certain skills. If you want to configure a device with ESPHome, then I think that you need to know C and maybe a bit about soldering and electronics. Everything can be learned, but you have to think from the start if you want to learn this or if it's easier to just buy another device which is plug-and-play.
4. Do I have the time to setup the device?
This is a bit the same as the question above. You don't know how to configure a device so you have to learn a certain programming language or some notions about electronics, but do you have time? I bought a few ESP boards because I wanted to learn how to use them and besides turning on/off an LED or reading a thermal sensor, that's the most I've done with them. I just don't have enough time and I'm glad I haven't spend more money on this.
5. Does the price justify the capabilities offered?
I bought a Netatmo Weather station last year, it had two modules, one for inside and one for outside. The inside one would tell me the CO2 level, temperature, and decibels, and the outside one would tell me the temperature and the light level. This weather station was around 150 EUR and it only has cloud connectivity. This means that HA does a request every 10 minutes to the Netatmo API in order to retrieve the latest values from the sensors, so if I don't have internet connection then it's pretty useless. I realized after making this purchase that I could've made my own weather station with the same sensors for half the price, and it had local connectivity.
6. What are the alternatives?
Most of the times I could've spent less money or I could've had more features if I read a bit more before purchasing. One of the reasons for this is that now there are multiple brands that offer mostly the same features for a device, but the cost is different. I always have in mind motion sensors when I think about this. You can spend a lot of money on Hue, but you get quality and they get triggered more often than the competition, which is a good thing. Then you have Xiaomi sensors which have the best price/quality ratio. And then you have Shelly/Tuya motion sensors which are Wi-Fi devices. Using Wi-Fi means that their battery consumes a lot faster, my Shelly sensors usually last 1-2 months whereas my Hue/Xiaomi sensors have over 2 years and I haven't changed one battery. Another advantage of Zigbee devices is that they send the signal to the gateway almost instantly. This means that if you enter a room with a Wi-Fi motion sensor, the time from detecting motion to sending the information through the network is ~2-3 seconds, but a Zigbee device will act almost instantly because they wake up and connect immediately. My point is that they have mostly the same functionality but if I do a quick google search then I immediately find out that I have to avoid Wi-Fi battery powered devices. Wi-Fi devices are more expensive and with the batteries I wasted in half a year I could've bought two more Zigbee sensors.
Do a bit of research before buying something, and asking these questions might help!