diff --git a/allauth_ui/templates/socialaccount/snippets/provider_list.html b/allauth_ui/templates/socialaccount/snippets/provider_list.html
index 4bf9131..c79c80c 100644
--- a/allauth_ui/templates/socialaccount/snippets/provider_list.html
+++ b/allauth_ui/templates/socialaccount/snippets/provider_list.html
@@ -4,13 +4,15 @@
 {% get_providers as socialaccount_providers %}
 
 {% for provider in socialaccount_providers %}
-   {% if provider.id == "openid" %}
-   {% for brand in provider.get_brands %}
-      <a class="flex items-center self-stretch justify-center h-12 mt-3 text-white uppercase rounded bg-stone-900 hover:bg-black"
-        href="{% provider_login_url provider.id  openid=brand.openid_url process=process  %}">{{brand.name}}</a>
-   {% endfor %}
-   {% endif %}
+   {% provider_connected provider user as is_connected %}
+   {% if not is_connected %}
+      {% if provider.id == "openid" %}
+         {% for brand in provider.get_brands %}
+            <a class="flex items-center self-stretch justify-center h-12 mt-3 text-white uppercase rounded bg-stone-900 hover:bg-black"
+              href="{% provider_login_url provider.id  openid=brand.openid_url process=process  %}">{{brand.name}}</a>
+         {% endfor %}
+      {% endif %}
       <a class="flex items-center justify-center h-12 mt-3 text-white uppercase self-stretch rounded {{ provider | socialprovider_color }}"
         href="{% provider_login_url provider.id process=process scope=scope auth_params=auth_params %}">{{provider.name}}</a>
-
+   {% endif %}
 {% endfor %}
diff --git a/allauth_ui/templatetags/allauth_ui.py b/allauth_ui/templatetags/allauth_ui.py
index 0570143..c6d9989 100644
--- a/allauth_ui/templatetags/allauth_ui.py
+++ b/allauth_ui/templatetags/allauth_ui.py
@@ -1,5 +1,6 @@
 import re
 from pathlib import Path
+from allauth.socialaccount.models import SocialAccount
 
 from django import template
 
@@ -29,3 +30,13 @@ def socialprovider_color(socialprovider):
     if name in social_colors:
         return f"social-{name}"
     return "bg-stone-900 hover:bg-black"
+
+
+@register.simple_tag
+def provider_connected(socialprovider, user):
+    if not user.is_authenticated:
+        return False
+    # pylint: disable=no-member
+    return bool(
+        SocialAccount.objects.filter(provider=socialprovider.name.lower(), user=user)
+    )