diff --git a/app/views/accounts/show.html.haml b/app/views/accounts/show.html.haml
index e8fd27e109..1a644c9022 100644
--- a/app/views/accounts/show.html.haml
+++ b/app/views/accounts/show.html.haml
@@ -3,8 +3,11 @@
- content_for :header_tags do
- if @account.user_prefers_noindex?
- %meta{ name: 'robots', content: 'noindex, noarchive' }/
+ %meta{ name: 'robots', content: 'noindex, noarchive, noai, noimageai' }/
+ - else
+ %meta{ name: 'robots', content: 'noai, noimageai' }/
+ %meta{ name: 'CCBot', content: 'nofollow' }
%link{ rel: 'alternate', type: 'application/rss+xml', href: @rss_url }/
%link{ rel: 'alternate', type: 'application/activity+json', href: ActivityPub::TagManager.instance.uri_for(@account) }/
diff --git a/app/views/follower_accounts/index.html.haml b/app/views/follower_accounts/index.html.haml
index d93540c028..b73ac9051c 100644
--- a/app/views/follower_accounts/index.html.haml
+++ b/app/views/follower_accounts/index.html.haml
@@ -1,5 +1,6 @@
- content_for :header_tags do
- %meta{ name: 'robots', content: 'noindex' }/
+ %meta{ name: 'robots', content: 'noindex, noai, noimageai' }/
+ %meta{ name: 'CCBot', content: 'nofollow' }
= render 'accounts/og', account: @account, url: account_followers_url(@account, only_path: false)
diff --git a/app/views/following_accounts/index.html.haml b/app/views/following_accounts/index.html.haml
index d93540c028..b73ac9051c 100644
--- a/app/views/following_accounts/index.html.haml
+++ b/app/views/following_accounts/index.html.haml
@@ -1,5 +1,6 @@
- content_for :header_tags do
- %meta{ name: 'robots', content: 'noindex' }/
+ %meta{ name: 'robots', content: 'noindex, noai, noimageai' }/
+ %meta{ name: 'CCBot', content: 'nofollow' }
= render 'accounts/og', account: @account, url: account_followers_url(@account, only_path: false)
diff --git a/app/views/home/index.html.haml b/app/views/home/index.html.haml
index 45990cd10c..9299d5d851 100644
--- a/app/views/home/index.html.haml
+++ b/app/views/home/index.html.haml
@@ -1,6 +1,7 @@
- content_for :header_tags do
- unless request.path == '/'
- %meta{ name: 'robots', content: 'noindex' }/
+ %meta{ name: 'robots', content: 'noindex, noai, noimageai' }/
+ %meta{ name: 'CCBot', content: 'nofollow' }
= render partial: 'shared/og'
diff --git a/app/views/layouts/embedded.html.haml b/app/views/layouts/embedded.html.haml
index e74bff9cc1..2a11a5ebe9 100644
--- a/app/views/layouts/embedded.html.haml
+++ b/app/views/layouts/embedded.html.haml
@@ -2,7 +2,8 @@
%html{ lang: I18n.locale }
%head
%meta{ charset: 'utf-8' }/
- %meta{ name: 'robots', content: 'noindex' }/
+ %meta{ name: 'robots', content: 'noindex, noai, noimageai' }/
+ %meta{ name: 'CCBot', content: 'nofollow' }
- if cdn_host?
%link{ rel: 'dns-prefetch', href: cdn_host }/
diff --git a/app/views/statuses/show.html.haml b/app/views/statuses/show.html.haml
index cb6b4c6193..9a404890f2 100644
--- a/app/views/statuses/show.html.haml
+++ b/app/views/statuses/show.html.haml
@@ -3,7 +3,10 @@
- content_for :header_tags do
- if @account.user_prefers_noindex?
- %meta{ name: 'robots', content: 'noindex, noarchive' }/
+ %meta{ name: 'robots', content: 'noindex, noarchive, noai, noimageai' }/
+ - else
+ %meta{ name: 'robots', content: 'noai, noimageai' }/
+ %meta{ name: 'CCBot', content: 'nofollow' }
%link{ rel: 'alternate', type: 'application/json+oembed', href: api_oembed_url(url: short_account_status_url(@account, @status), format: 'json') }/
%link{ rel: 'alternate', type: 'application/activity+json', href: ActivityPub::TagManager.instance.uri_for(@status) }/
diff --git a/app/views/tags/show.html.haml b/app/views/tags/show.html.haml
index 4b4967a8f5..355a0c3f2e 100644
--- a/app/views/tags/show.html.haml
+++ b/app/views/tags/show.html.haml
@@ -1,5 +1,6 @@
- content_for :header_tags do
- %meta{ name: 'robots', content: 'noindex' }/
+ %meta{ name: 'robots', content: 'noindex, noai, noimageai' }/
+ %meta{ name: 'CCBot', content: 'nofollow' }
= render partial: 'shared/og'
= render partial: 'shared/web_app'