Williamson had been due to arrive at Headingley on July 9 and leave on September 8.
But the New Zealand captain will now arrive on July 15 and leave on September 2, meaning that he will miss two Vitality T20 Blast games and one Specsavers County Championship match.
The move follows his “unexpected workload” in the Indian Premier League, with New Zealand Cricket wanting him to rest after his involvement as captain of Sunrisers Hyderabad.
“When Kane originally signed for us and New Zealand Cricket accepted the dates, it was thought that he wouldn’t play every game in IPL and that he wouldn’t be captain,” said Martyn Moxon, Yorkshire’s director of cricket.
“But, with David Warner getting banned, he became captain of Sunrisers and has consequently played every game, so New Zealand Cricket want him to have more of a rest.
“We’re frustrated, obviously, and counties are having to deal with this sort of thing all the time.”
Williamson’s first match will now be against Lancashire in the T20 at Old Trafford on July 20.
His last Championship game will be against Somerset at Headingley, scheduled to finish on September 1.
Yorkshire are still weighing up whether to sign a replacement T20 overseas player for Billy Stanlake, who was pulled out of his contract by Cricket Australia as they want him to play in other formats.
“We’re still contemplating what to do,” added Moxon. “We’re discussing some potential options, but there’s nothing definite yet.”
Yorkshire captain Gary Ballance has returned to training after taking a break for “personal reasons”.
“He’s been around the last couple of days and we’re just going to assess him leading into Friday (against Notts at Headingley),” said Moxon.