Make the dressing: Add the mayonnaise, milk, Dijon mustard, apple cider vinegar, sugar, celery seed, salt, and pepper to a small bowl and whisk until smooth.
Prep the vegetables: Add the shredded cabbage, shredded carrots, and grated onion to a large mixing bowl.
Toss the coleslaw: Pour about two-thirds of the dressing over the cabbage mixture and toss to combine. Add more dressing as needed until the slaw is evenly coated.
Chill before serving: Cover and refrigerate for at least 1 hour to let the flavors blend.
Stir and serve: Stir before serving to redistribute the dressing. If the coleslaw seems dry, add a little more dressing. If it seems watery, drain excess liquid and stir in a spoonful of mayonnaise.
Notes
Two 14-ounce bags of coleslaw mix can be used in place of the cabbage and carrots.
For the best texture, dress the coleslaw 1 to 3 hours before serving.
If making further ahead, store the dressing and shredded vegetables separately.
If the slaw gets watery, drain off excess liquid and stir in a little mayonnaise.
Store leftovers in the refrigerator for 3 to 5 days. Best texture is within 2 to 3 days.