Way, way overstocked. Goldfish get big fast and are incredibly messy fish. The first goldfish should have 15gallons for himself, and then 10 per additional goldfish. The three you mentioned alone should be in at least a 30 gallon tank, and that's pushing it. The guppies will mate if you have a male and female in there, bottom line. And with most species, it's usually 1 male per several female, not the other way around. Many males usually get aggressive and territorial , and may stress each other out or kill each other (even in guppies).
Consider a bigger tank, or giving some fish away to your LFS or a friend. Good luck!