diff --git a/app/javascript/flavours/glitch/components/follow_button.tsx b/app/javascript/flavours/glitch/components/follow_button.tsx
index 023c955c63..940f6b0f58 100644
--- a/app/javascript/flavours/glitch/components/follow_button.tsx
+++ b/app/javascript/flavours/glitch/components/follow_button.tsx
@@ -138,6 +138,8 @@ export const FollowButton: React.FC<{
: messages.follow;
let label;
+ let disabled =
+ relationship?.blocked_by || account?.suspended || !!account?.moved;
if (!signedIn) {
label = intl.formatMessage(followMessage);
@@ -147,12 +149,16 @@ export const FollowButton: React.FC<{
label = ;
} else if (relationship.muting && withUnmute) {
label = intl.formatMessage(messages.unmute);
+ disabled = false;
} else if (relationship.following) {
label = intl.formatMessage(messages.unfollow);
+ disabled = false;
} else if (relationship.blocking) {
label = intl.formatMessage(messages.unblock);
+ disabled = false;
} else if (relationship.requested) {
label = intl.formatMessage(messages.followRequestCancel);
+ disabled = false;
} else if (relationship.followed_by && !account?.locked) {
label = intl.formatMessage(messages.followBack);
} else {
@@ -187,11 +193,7 @@ export const FollowButton: React.FC<{
return (