The unit is big and winding. Management was communicative and helpful all throughout. The location is great. It's right beside parks for kids, restaurants, stores, and one of the major train stations and a short 30 minute walk to the center. Retiro Park is a 15-20 minute walk away (you have to wind around a bit to get to it) and is the nicest park I've ever been in.
The unit was clean and mostly equipped. It was missing basics like olive oil, salt, etc. We had to buy our own dishwasher detergence and kitchen sponges. It was random what was there and what wasn't but if you're not cooking, then it had everything from additional towels to soap, shampoo, toilet paper, etc. If you are cooking, look through the kitchen upon arrival and make a list of random things you need and expect to have to buy a few of them.
Beyond that, the only part of the stay that wasn't great was the check in. The instructions that I was given told me that 'somebody would meet me'. And there was somebody there, but they were inside the apartment. So we arrived on the street and there were two buzzers. We weren't given apartment number or buzzer code. It was only when I walked two blocks away to get wi-fi that I looked back at the actual booking and was able to figure out the apartment number to know where to buzz. This was after a 16hr travel day with a baby. Be sure to get more detailed instructions when you check in.
All in all, we had a great stay in Madrid and I'd recommend this apartment. The inconveniences were minor, unit big and clean, and management team was really great in all dealings that we had with them.