In a large bowl, combine the green cabbage, red cabbage, carrots, and red onion. Toss to mix evenly.
In a small bowl, whisk together the apple cider vinegar, honey, olive oil, Dijon mustard, celery seed, salt, and pepper until the dressing is smooth and well combined.
Pour the dressing over the cabbage mixture and toss thoroughly so everything is evenly coated.
Let the coleslaw sit at room temperature for about 15 minutes to allow the flavors to blend and the cabbage to soften slightly.
Taste and adjust seasoning if needed—add a pinch more salt or a dash of vinegar for extra tang.
Cover and refrigerate for at least 1 hour before serving for best flavor and texture.
Toss the coleslaw again just before serving. Serve cold or slightly chilled.