Villar was batting .200 with six homers and 22 RBIs. Porter said the move was about Villar getting his confidence back.
"He has not played to his potential," Porter said.
Marwin Gonzalez started at shortstop on Monday and went 1-for-4 with a home run. Porter said Gonzalez, who is hitting .265, would get a lot more playing time, but he did not say he would be the starter for the Astros.
Villar on Sunday went 0-for-3 against the Tigers. He reached with a walk in the third inning but made a baserunning mistake when he rounded third base with the ball heading there anyway for a force out. He was thrown out trying to slide back into third. He also missed a Tigers player running to third base after he cut off a throw later in the game.
On Friday, Villar made a throwing error in the eighth inning, allowing the Tigers to tie the game at 3 before the Astros went on to win in the 11th. "You can't take pitches off," Porter said in relation to his reasoning for optioning Villar. "It's extremely important to focus each every pitch of the ballgame."
Mike Vernon is an associate reporter for MLB.com. This story was not subject to the approval of Major League Baseball or its clubs.