I got emerald earrings, and my mother got an emerald ring at Green Fire in Cartagena. If you take a cab, you have to barter with the drivers to get a fair price. They told me they wanted $60 to take us into Cartagena, stay with us and bring us back to the ship. I remembered that I had paid $6.00 to come back to the ship from shopping the last time I was in Cartagena, so I refused, and started talking to the drivers myself. I ended up paying $20.00 roundtrip for the three of us to go to the shopping center with Greenfire. You won't get a "bargain" at greenfire, but they will stand behind their emeralds, they are all set in 18 K gold, and they have stores in the Caribbean, and also in the U.S., so I felt safer getting my emeralds in this well known store. There were people on our first trip that bought a ring at a smaller store, and it was pretty and they definitely paid less than we did, but I don't know about the quality of their stones, so I would rather stick with a "known quantity" when shopping for high dollar items. You can check on prices a bit here at a good jewelry store so you know about what you are willing to pay. I think the first time I went there, I paid with a personal check from the states! Have fun!
I do believe you can get a good deal on emeralds there, and also on gold. But as Kathi said, the question is a matter of quality. With any luck you can find someone knowledgable to go with you to look at these gems - a jeweler from the ship or someone you meet. Only shop in reputable stores because let's face it, you are thousands of miles from home and very unlikely to return - you're a walking target for a scam artist.
By the way - every shore excursion I have ever been on in Cartegena stopped at the main tourist shopping area for an extended period of time just before returning to the ship. You can see the sights and shop, too, and you don't have to worry about getting a cab. (the cabbies are very aggressive in Columbia).