diff --git a/classes/PodsAPI.php b/classes/PodsAPI.php
index <HASH>..<HASH> 100644
--- a/classes/PodsAPI.php
+++ b/classes/PodsAPI.php
@@ -6593,6 +6593,15 @@ class PodsAPI {
      * @uses pods_query()
      */
     public function lookup_related_items ( $field_id, $pod_id, $ids, $field = null, $pod = null ) {
+	if ( pods_api_cache() ) {
+		// Check cache first, no point in running the same query multiple times
+		$cache_key = md5( serialize( array( $field_id, $pod_Id, $ids ) ) );
+		$results = pods_cache_get( $cache_key, 'pods_lookup_related_items' );
+
+		if ( false !== $results ) {
+			return $results;
+		}
+	}
         $related_ids = array();
 
         if ( !is_array( $ids ) )
@@ -6742,6 +6751,9 @@ class PodsAPI {
             if ( 0 < $related_pick_limit && !empty( $related_ids ) )
                 $related_ids = array_slice( $related_ids, 0, $related_pick_limit );
         }
+	if ( isset( $cache_key ) ) {
+		pods_cache_set( $cache_key, $related_ids, 'pods_lookup_related_items' );
+	}
 
         return $related_ids;
     }
Add caching to lookup_related_items