Mastodon Relay Subscription Pending Forever: Fix Steps
🔍 WiseChecker

Mastodon Relay Subscription Pending Forever: Fix Steps

When you subscribe to a Mastodon relay, the status often shows “pending” and never changes to “accepted.” This happens because the relay server and your instance cannot complete the required handshake. The relay expects a subscription request from your admin account, but your instance may be blocking the relay or the relay may be inactive. This article explains why the subscription gets stuck and provides the exact steps to fix it.

Key Takeaways: Fix a Stuck Relay Subscription on Mastodon

  • Preferences > Administration > Relays: Check the subscription status and resend the request from your Mastodon admin panel.
  • Relay server URL check: Ensure the relay URL is correct and the relay is actively accepting subscriptions from your instance.
  • Moderation > Domain blocks: Verify that the relay domain is not blocked or silenced on your instance.

Why a Mastodon Relay Subscription Gets Stuck on Pending

A Mastodon relay is a server that forwards public posts from all connected instances to your instance. When you subscribe, your instance sends a subscription request to the relay. The relay must then accept that request. If the status remains pending, the acceptance handshake never completed.

The most common cause is that the relay server is not responding or has blocked your instance. Another reason is that your instance has the relay domain blocked or silenced in its moderation settings. A third cause is that the relay subscription URL you entered is incorrect or points to a relay that is no longer active. The pending status means your instance is waiting for a response that never arrives.

Steps to Force a Relay Subscription to Complete

Follow these steps in order. Each step addresses a specific reason the subscription is stuck. After each step, check the relay status in your admin panel.

  1. Verify the relay URL is correct
    Open the relay subscription page in your Mastodon admin panel. Go to Preferences > Administration > Relays. Click the edit button next to the stuck relay. Copy the relay URL and paste it into a browser address bar. If the relay returns a 404 error or does not load a JSON response, the relay is down or the URL is wrong. Replace it with a working relay URL from a trusted directory like relaylist.com.
  2. Resend the subscription request
    In the Relays admin page, find the stuck relay. Click the delete button to remove it. Wait 30 seconds. Then click Add relay and paste the correct relay URL. Click Save. The status should change to pending again but may move to accepted within a few minutes. If it stays pending, proceed to the next step.
  3. Check domain blocks on your instance
    Go to Preferences > Moderation > Domain blocks. Search for the relay domain name. If it appears in the list with a severity of suspend, silence, or reject media, the relay cannot communicate with your instance. Remove the block by clicking the delete button next to it. Then repeat step 2.
  4. Test connectivity from your server
    SSH into your Mastodon server. Run this command to test if your instance can reach the relay: curl -I https://relay.example.com. Replace the URL with the actual relay. If curl shows a timeout or connection refused, the relay is not reachable. Contact your server administrator or switch to a different relay.
  5. Check the relay’s allowlist or blocklist
    Some relays manually approve each instance. Visit the relay’s website (often relay.example.com). Look for an allowlist or subscription page. If the relay requires approval, send a request to the relay admin. Include your instance domain. Wait for approval, then check the status in your admin panel.

If Mastodon Relay Subscription Still Shows Pending After the Main Fix

Sometimes the subscription remains stuck even after you verify the URL and remove domain blocks. These additional issues may be the cause.

Relay is offline or permanently shut down

Many relays close without notice. If the relay URL returns a blank page or a 502 error, the relay is dead. Delete the subscription and subscribe to a different relay. Check relaylist.com for relays that are currently online and accepting new instances.

Your instance software is outdated

Mastodon versions before 3.5 have known bugs with relay handshakes. Update your instance to the latest stable release. After the update, go to Preferences > Administration > Relays and delete the stuck relay. Add it again. The subscription should move to accepted within 30 seconds.

Relay is configured to reject your instance

Some relay operators block instances that host spam or illegal content. If you suspect this, send a polite email to the relay admin. Ask if your instance is blocked and why. If the relay admin confirms a block, subscribe to a different relay instead.

Mastodon Relay Subscription Pending Forever vs. Instant Acceptance: What Changes

Item Pending Forever Instant Acceptance
Relay URL status Relay is down, wrong URL, or returns errors Relay is online and responds with valid JSON
Domain block on instance Relay domain is suspended or silenced No domain block exists for the relay
Relay allowlist Relay requires manual approval and has not approved your instance Relay accepts all instances or has approved yours
Network connectivity Your server cannot reach the relay due to firewall or DNS issues Your server can connect to the relay and receive the handshake response

After you fix the subscription, posts from the relayed instances will appear in your federated timeline within a few minutes. To confirm the relay is working, go to Preferences > Administration > Relays. The status should show “accepted” and the relay domain should appear in the list. If you manage multiple instances, use a dedicated relay that supports automatic approval to avoid manual steps in the future.