"I buy all his clothes, obviously, but he picks out what he wears. I've always bought his clothes in the boys' section, but recently I found a sequins dress (he loves sparkles) and decided to buy it for him and see if he wanted to wear it," she wrote on Reddit.
Her son picked out the dress and wore it to preschool the next day.
But the decision has angered her own mum who "hates this idea".
"She's not anti gay, or really even against boys wearing dresses, but her issue is that my son never specifically asked for a dress or complained about wearing boys' clothes.
"She thinks I'm making him 'confused' for no reason, and said I should have never even provided the option."
While the mother was worried about potential bullying of her son, she said those at preschool have been supportive of her and her son's decision to wear a dress.
Fellow parents backed the mum's decision to buy a dress, some taking aim at the grandmother's views.
"Your mum would've had no problem with you buying a dress for a girl if she didn't specially ask for it," one said.
Others backed the mum, saying she did well for taking her child's happiness into consideration.
"I think it was considerate of you to be open to different options for your son since you know what he likes. Children's clothing is super gendered. If your kid wants sparkles, it's going to need to come from that section. People are more open to this stuff now, but still it's only an issue when a boy wants to wear something considered girly... It's not your fault clothing, like everything else, is sexist. I think it's nice you care about making your kid happy."
However, one trans man has warned against confusing her son, opening up about his past experiences.
"I'm a trans man and I wore masculine clothes when I was that age because I refused to wear anything else. It made my life hell. Your mother is right, you may only end up confusing him and will definitely hurt him socially. Despite people becoming more accepting since I was that age, kids are ruthless and cruel.
"It's best to not try and push anything gender non conforming onto him unless he specifically asks. If he asks it's a different situation, but that dress will only make his life harder than it needs to be."