Puerto Rico is not a state because neither the United States nor Puerto Rico itself has clearly stated that it should be a state.
When the US took Puerto Rico in the Spanish-American War, it was not offered statehood. One reason for that is that Puerto Rico was made up of people who were not ethnically or culturally similar to most Americans of the time. This remains a reason why many Americans would resist statehood for Puerto Rico. Recently, Rick Santorum, who is running for president in the Republican primaries, said that Puerto Rico should first make English its official language. This shows that there is some sentiment in the United States that Puerto Rico would not be a good fit as a state.
It is also not clear that Puerto Ricans want statehood. There will be two votes this year that will tell us more about this. The last time they voted on the question, a little under half of the voters voted for statehood.
So, neither the people living in the 50 US states nor the Puerto Ricans themselves are sure that Puerto Rico should be a state.