Crewe boss Steve Davis admitted his side had been "inept" as Portsmouth ended their 23-game winless run with a 2-1 victory.
First-half goals from Patrick Agyemang and David Connolly had put the visitors on course for their first League One victory since October before Mathias Pogba pulled one back for Crewe.
But despite dominating second-half possession, Crewe could not find the equaliser and the south-coast club held on to complete the double over their hosts.
Davis said: "We didn't defend well enough for their goals and we didn't create enough.
"The crowd showed their lack of appreciation and quite rightly so as there was a lack of effort drive and ideas.
"We went long and tried to miss out a lot of the pitch because of the condition of the pitch.
"First half we were inept, but second half we were much the better side and might have nicked it. We had a lot of crosses and got a lot into the box, but we never had anything really clear-cut.
"On another day, we might have clawed it back but it wasn't to be.
"We haven't got a poacher in there. We're not clinical. We rarely score than one goal in a game and that is a problem when you go two-down."