Boil shrimp for 2-3 minutes, remove and place in ice bath to cool.
Pat the shrimp dry and place in a large bowl.
Stir in cilantro, red onion, cucumber, tomatoes, pineapple, garlic, ketchup, lime juice, hot sauce, and season with salt.
Gently fold in grapefruit.
Place into serving bowl/plate and top with avocado, fresh squeeze of lime juice, and cilantro leaves.
Cover, and refrigerate 2 to 3 hours.