diff --git a/src/components/conversation/conversation.js b/src/components/conversation/conversation.js
index 10dd8eb0c7794d263c0e37b2b18f28b1475091f8..72ee9c390dfd39c6690d9f78c64bc9bf156e5573 100644
--- a/src/components/conversation/conversation.js
+++ b/src/components/conversation/conversation.js
@@ -42,7 +42,8 @@ const conversation = {
     'statusId',
     'collapsable',
     'isPage',
-    'pinnedStatusIdsObject'
+    'pinnedStatusIdsObject',
+    'inProfile'
   ],
   created () {
     if (this.isPage) {
diff --git a/src/components/conversation/conversation.vue b/src/components/conversation/conversation.vue
index f184c0717b0f60b2bb485eedbb1ed4f48acbdb49..0f1de55fd40377e0ebb818cd09969d3c25723147 100644
--- a/src/components/conversation/conversation.vue
+++ b/src/components/conversation/conversation.vue
@@ -26,6 +26,7 @@
       :in-conversation="isExpanded"
       :highlight="getHighlight()"
       :replies="getReplies(status.id)"
+      :in-profile="inProfile"
       class="status-fadein panel-body"
       @goto="setHighlight"
       @toggleExpanded="toggleExpanded"
diff --git a/src/components/status/status.js b/src/components/status/status.js
index 502d9583258757ff367897d2cdeb24db386377d8..d17ba3180e335547dbaf219b8defceb580d736e6 100644
--- a/src/components/status/status.js
+++ b/src/components/status/status.js
@@ -29,7 +29,8 @@ const Status = {
     'isPreview',
     'noHeading',
     'inlineExpanded',
-    'showPinned'
+    'showPinned',
+    'inProfile'
   ],
   data () {
     return {
@@ -117,7 +118,7 @@ const Status = {
 
       return hits
     },
-    muted () { return !this.unmuted && (this.status.user.muted || this.muteWordHits.length > 0) },
+    muted () { return !this.unmuted && ((!this.inProfile && this.status.user.muted) || (!this.inConversation && this.status.thread_muted) || this.muteWordHits.length > 0) },
     hideFilteredStatuses () {
       return typeof this.$store.state.config.hideFilteredStatuses === 'undefined'
         ? this.$store.state.instance.hideFilteredStatuses
diff --git a/src/components/timeline/timeline.js b/src/components/timeline/timeline.js
index 8df48f7f2d15b3f9693af0fac5cdb95b5c0c8b4b..0594576c46eb0db6b7fb80dff2fa790015d352e8 100644
--- a/src/components/timeline/timeline.js
+++ b/src/components/timeline/timeline.js
@@ -25,7 +25,8 @@ const Timeline = {
     'tag',
     'embedded',
     'count',
-    'pinnedStatusIds'
+    'pinnedStatusIds',
+    'inProfile'
   ],
   data () {
     return {
diff --git a/src/components/timeline/timeline.vue b/src/components/timeline/timeline.vue
index ba66e6dac63f30bbf0254736ac1e6c8982a05048..f1d3903a078660e422aaef6410690dc7175df3ea 100644
--- a/src/components/timeline/timeline.vue
+++ b/src/components/timeline/timeline.vue
@@ -36,6 +36,7 @@
             :status-id="statusId"
             :collapsable="true"
             :pinned-status-ids-object="pinnedStatusIdsObject"
+            :in-profile="inProfile"
           />
         </template>
         <template v-for="status in timeline.visibleStatuses">
@@ -45,6 +46,7 @@
             class="status-fadein"
             :status-id="status.id"
             :collapsable="true"
+            :in-profile="inProfile"
           />
         </template>
       </div>
diff --git a/src/components/user_profile/user_profile.vue b/src/components/user_profile/user_profile.vue
index 4251691624f317e248023e9e5dd7088993becf3e..14082e83942274d63fe0112d3b5a811ab0fad3b8 100644
--- a/src/components/user_profile/user_profile.vue
+++ b/src/components/user_profile/user_profile.vue
@@ -26,6 +26,7 @@
           timeline-name="user"
           :user-id="userId"
           :pinned-status-ids="user.pinnedStatusIds"
+          :in-profile="true"
         />
         <div
           v-if="followsTabVisible"
@@ -69,6 +70,7 @@
           timeline-name="media"
           :timeline="media"
           :user-id="userId"
+          :in-profile="true"
         />
         <Timeline
           v-if="isUs"
@@ -79,6 +81,7 @@
           :title="$t('user_card.favorites')"
           timeline-name="favorites"
           :timeline="favorites"
+          :in-profile="true"
         />
       </tab-switcher>
     </div>
diff --git a/src/services/entity_normalizer/entity_normalizer.service.js b/src/services/entity_normalizer/entity_normalizer.service.js
index 6cc1851d6382f7c47564cd8a1a962fff80b4f85b..7438cd9069a8bc885f0bfaaa9b74cae4cef7ec7a 100644
--- a/src/services/entity_normalizer/entity_normalizer.service.js
+++ b/src/services/entity_normalizer/entity_normalizer.service.js
@@ -224,6 +224,7 @@ export const parseStatus = (data) => {
       output.statusnet_conversation_id = data.pleroma.conversation_id
       output.is_local = pleroma.local
       output.in_reply_to_screen_name = data.pleroma.in_reply_to_account_acct
+      output.thread_muted = pleroma.thread_muted
     } else {
       output.text = data.content
       output.summary = data.spoiler_text