C.B.
Hi S. - Under no circumstances is being unkind acceptable. Period. (This is the message to your child, not you!)
At four, it's the perfect time for him to start learning two concepts: social choices and consequeces and "self" esteem(these will serve him all his life...)
So, I agree with removing him from the situation up until you said "until he can be kind.". I say, remove him for the immediate past behavior and that's it - in the moment. No judgement.
So, when it happens, just say, "being unkind is not acceptable" - very, very simple. When you are angry, he won't hear much anyway - And he'll just be thinking, "but SHE..."
And he goes into time out with no more conversation. Quick, severe, you're in charge.
When the time out is over (completely removed, very bored, 4 minutes as he is 4, time out starts when he is sitting quietly...), you hug and kiss, say it again, "being unkind is not acceptable - let's try this again!" Be kind and enthusiastic - and off he goes.
My reasoning here is that it's important to remain unjudgemental - be careful, especially when he already knows he's wrong - that you don't use "you" at all. If he feels you are judging him, then he won't hear a word.
And lastly, after the play date is over and he IS kind, be sure to tell him, "I noticed you were being kind and nice to Sally today - I'm so proud of you!" - And most importantly - more than any of this - the next thing you need to say is, "How do you feel?" (Hopefully he'll say he's proud of himself, and if not, guide him to it - are you proud of yourself?)
Because that's why they call it "self" esteem! Now is the time to help him learn to be proud of himself, not to perform for others...
Worse case, by the way, maybe they have to play in different places for a while - her outside, him inside, different rooms, etc.
Don't worry, this too shall pass!
OK - enough for today.