The Satyanarayana Pooja is a recent addition to the pantheon of Hindu vows and poojas. It is an easy substitute for complex Vedic rituals like homams which require special materials which may not be easily available at all times. The pooja is often done on Pournami (full moon) days. For more info see:
Your vote on this answer has already been received
The Satyanarayan Puja is a Hindu religious observance. It is a ritual performed by Hindus before/on any major occasion like marriage, house warming ceremony etc.The Satyanarayana Puja is usually done on the Purnima day of every month (the day of the full moon) or a Sankranti. It is also done on special occasions and during times of achievements as an offering of gratitude to the Lord. These occasions include marriage, graduation, new job, and the purchase of a new home to name a few. In addition, it is said that a devotional performance of this puja will bear children to couples trying to start a family.The puja starts by a prayer to Lord Ganesha, to remove all obstacles that may occur as a result of incorrectly performing the puja. This is done by chanting all the names of Lord Ganesha and offering prasad (a food offering, usually consisting of one of Lord Ganesha's favorite foods - modak, a sugar and coconut mixture, or ladu) and the showering of flower petals.