                           |> Map.put_new(:guid, fallback_url)
 
       if plain_episode_map[:guid] do
-        {:ok, episode} = get_or_insert(plain_episode_map, podcast.id)
+        case get_or_insert(plain_episode_map, podcast.id) do
+          {:ok, episode} ->
+            if episode_map[:chapters] do
+              for {_, chapter_map} <- episode_map[:chapters] do
+                Chapter.get_or_insert(chapter_map, episode.id)
+              end
+            end
 
-        if episode_map[:chapters] do
-          for {_, chapter_map} <- episode_map[:chapters] do
-            Chapter.get_or_insert(chapter_map, episode.id)
-          end
+            if episode_map[:enclosures] do
+              for {_, enclosure_map} <- episode_map[:enclosures] do
+                Enclosure.get_or_insert(enclosure_map, episode.id)
+              end
+            end
+
+            Contributor.persist_many(episode_map[:contributors], episode)
+          {:exists, episode} ->
+            true
         end
-
-        if episode_map[:enclosures] do
-          for {_, enclosure_map} <- episode_map[:enclosures] do
-            Enclosure.get_or_insert(enclosure_map, episode.id)
-          end
-        end
-
-        Contributor.persist_many(episode_map[:contributors], episode)
       end
     end
   end

            |> Map.merge(episode_map)
            |> Repo.insert()
          episode ->
            {:ok, episode}
        end
      episode ->
        {:ok, episode}
    end
  end


            IO.puts "\n\e[33m === new Episode:  " <> episode.title <> " ===\e[0m"

          {:exists, _episode} ->
            true
        end
      end
