I am back (just this afternoon) from our week split between Haarlem and Amsterdam.
We rented a house through VRBO in Haarlem for five nights, and stayed in a family room at the De Ware Jacob hotel in Amsterdam for three nights.
Getting back and forth between Haarlem and Amsterdam on the train was dead easy. €5.40 one way, or €10.80 round trip. There are trains allllll the time, you don't have to worry about the schedule - you just show up at either train station and catch the next one. Trip time is 17-18 minutes.
Our party had four people in it the nights we were in Haarlem, and three the nights we were in Amsterdam. We had a three-story house in Haarlem in a nice cute neighborhood, had use of the kitchen and dishwasher and washing machine and dryer, and of course two full bathrooms.
Our visits to the Anne Frank House and the Rijksmuseum occurred during our Haarlem stay days, as the member of our party who had to leave partway through definitely wanted to go with those. We stayed in town for dinner one night after taking an evening boat ride with Bow's Journeys, and it was still easy to get back to Haarlem that evening around 10:30 pm or whatever it was. Now, we aren’t night owls, so if you are going to Amsterdam to party, this might not work for you, but we were very happy.
I very much like the DeWare Jacob hotel, just south of Museumplein and very near the 12 tram (and the bus to the airport), but of course we gave up in personal space what we gained in proximity to Amsterdam sites by moving there for our last three nights. Still, given Amsterdam's high hotel costs, I really like this hotel and its location. It was perfect too for heading out to explore de Pijp one afternoon, or taking a leisurely walk to Foodhallen. And of course if you are headed to Van Gogh or Rijksmuseum, it can't be beat.