1. The simplest and most obvious reason for failed tomato ripening is the maturity date, the time it takes your particular tomato cultivar to go from seed to supper. Each particular variety of tomato ripens at differing intervals. If the variety you grew last season was already producing tomatoes by this time, but the one you are growing now still has green tomatoes, then perhaps you have a different variety. Most tomatoes ripen in 6 to 8 weeks from pollination. Be sure to check the maturity date on your variety. Northern growers are encouraged to select short season varieties with quicker maturation periods.
2. Another reason your tomatoes may fail to turn red is simply that they aren't red tomatoes at all. Are you sure of the variety you planted ? Could they possibly be some variety of yellow or pink tomato which are very common. See: Yellow Tomatoes
3. The next most common reason tomatoes fail to ripen is temperature.
A. If it's too hot the pigmentations in tomatoes, carotene and lycopene can not be produced. This leads to the tomatoes remaining green for long periods of time. They are stagnated by the heat. The optimal ripening temperature is 70 to 75 F for tomatoes. When temperatures exceeds this benchmark significantly the ripening process stagnates and at times even stops completely.
B. If it's too cold tomatoes will ripen at a much slower rate and will not concentrate their sugars leading to a low quality tomato. They also fail to produce adequate lycopene leading to an appearance of under ripe tomatoes. If you leave them on the vine hoping they will ripen eventually, they frequently rot first.