diff --git a/app/assets/javascripts/discourse/templates/components/topic-map.hbs b/app/assets/javascripts/discourse/templates/components/topic-map.hbs
index 1ab49363e..8043f6602 100644
--- a/app/assets/javascripts/discourse/templates/components/topic-map.hbs
+++ b/app/assets/javascripts/discourse/templates/components/topic-map.hbs
@@ -72,7 +72,7 @@
               <span class='badge badge-notification clicks' title='{{i18n 'topic_map.clicks' count=clicks}}'>{{link.clicks}}</span>
             </td>
             <td>
-              <a href="{{unbound link.url}}" target="_blank" class='topic-link track-link' data-user-id="{{unbound link.user_id}}" data-ignore-post-id="true" title="{{unbound link.url}}">
+              <a href="{{unbound link.url}}" target="_blank" class='topic-link track-link {{if link.attachment "attachment"}}' data-user-id="{{unbound link.user_id}}" data-ignore-post-id="true" title="{{unbound link.url}}">
                 {{#if link.title}}{{link.title}}{{else}}{{shorten-url link.url}}{{/if}}
               </a>
               {{link-domain link}}
diff --git a/app/serializers/topic_link_serializer.rb b/app/serializers/topic_link_serializer.rb
index e14c9e8d5..1f64aec4b 100644
--- a/app/serializers/topic_link_serializer.rb
+++ b/app/serializers/topic_link_serializer.rb
@@ -4,6 +4,7 @@ class TopicLinkSerializer < ApplicationSerializer
              :title,
              :fancy_title,
              :internal,
+             :attachment,
              :reflection,
              :clicks,
              :user_id,
@@ -25,6 +26,10 @@ class TopicLinkSerializer < ApplicationSerializer
     object['internal'] == 't'
   end
 
+  def attachment
+    Discourse.store.has_been_uploaded?(object['url'])
+  end
+
   def reflection
     object['reflection'] == 't'
   end