diff --git a/lib/suggested_topics_builder.rb b/lib/suggested_topics_builder.rb
index 26a83dcff..509a00d35 100644
--- a/lib/suggested_topics_builder.rb
+++ b/lib/suggested_topics_builder.rb
@@ -7,6 +7,7 @@ class SuggestedTopicsBuilder
   def initialize(topic)
     @excluded_topic_ids = [topic.id]
     @category_id = topic.category_id
+    @category_topic_ids = Category.pluck(:topic_id).compact
     @results = []
   end
 
@@ -20,6 +21,7 @@ class SuggestedTopicsBuilder
     results = results.where('topics.id NOT IN (?)', @excluded_topic_ids)
                      .where(closed: false, archived: false, visible: true)
                      .to_a
+                     .reject { |topic| @category_topic_ids.include?(topic.id) }
 
     unless results.empty?
       # Keep track of the ids we've added
diff --git a/spec/components/suggested_topics_builder_spec.rb b/spec/components/suggested_topics_builder_spec.rb
index 71187f709..0ecb50e74 100644
--- a/spec/components/suggested_topics_builder_spec.rb
+++ b/spec/components/suggested_topics_builder_spec.rb
@@ -90,6 +90,17 @@ describe SuggestedTopicsBuilder do
       end
     end
 
+    context "category definition topics" do
+      let!(:category) { Fabricate(:category) }
+
+      it "doesn't add a category definition topic" do
+        category.topic_id.should be_present
+        builder.add_results(Topic)
+        builder.size.should == 0
+        builder.should_not be_full
+      end
+    end
+
   end