diff --git a/src/fr/sushiscan/build.gradle b/src/fr/sushiscan/build.gradle
index b38650f60..b88ddce26 100644
--- a/src/fr/sushiscan/build.gradle
+++ b/src/fr/sushiscan/build.gradle
@@ -3,7 +3,11 @@ ext {
     extClass = '.SushiScan'
     themePkg = 'mangathemesia'
     baseUrl = 'https://sushiscan.net'
-    overrideVersionCode = 11
+    overrideVersionCode = 12
 }
 
 apply from: "$rootDir/common.gradle"
+
+dependencies {
+    implementation project(':lib:randomua')
+}
diff --git a/src/fr/sushiscan/src/eu/kanade/tachiyomi/extension/fr/sushiscan/SushiScan.kt b/src/fr/sushiscan/src/eu/kanade/tachiyomi/extension/fr/sushiscan/SushiScan.kt
index 9f5cdf4cc..c25827756 100644
--- a/src/fr/sushiscan/src/eu/kanade/tachiyomi/extension/fr/sushiscan/SushiScan.kt
+++ b/src/fr/sushiscan/src/eu/kanade/tachiyomi/extension/fr/sushiscan/SushiScan.kt
@@ -1,8 +1,15 @@
 package eu.kanade.tachiyomi.extension.fr.sushiscan
 
+import android.app.Application
+import androidx.preference.PreferenceScreen
+import eu.kanade.tachiyomi.lib.randomua.addRandomUAPreferenceToScreen
+import eu.kanade.tachiyomi.lib.randomua.getPrefCustomUA
+import eu.kanade.tachiyomi.lib.randomua.getPrefUAType
+import eu.kanade.tachiyomi.lib.randomua.setRandomUserAgent
 import eu.kanade.tachiyomi.multisrc.mangathemesia.MangaThemesia
 import eu.kanade.tachiyomi.network.GET
 import eu.kanade.tachiyomi.network.interceptor.rateLimit
+import eu.kanade.tachiyomi.source.ConfigurableSource
 import eu.kanade.tachiyomi.source.model.FilterList
 import eu.kanade.tachiyomi.source.model.Page
 import eu.kanade.tachiyomi.source.model.SManga
@@ -13,17 +20,38 @@ import okhttp3.HttpUrl.Companion.toHttpUrl
 import okhttp3.OkHttpClient
 import okhttp3.Request
 import org.jsoup.nodes.Document
+import uy.kohesive.injekt.Injekt
+import uy.kohesive.injekt.api.get
 import java.text.SimpleDateFormat
 import java.util.Locale
 import java.util.concurrent.TimeUnit
 
-class SushiScan : MangaThemesia("Sushi-Scan", "https://sushiscan.net", "fr", mangaUrlDirectory = "/catalogue", dateFormat = SimpleDateFormat("MMMM dd, yyyy", Locale.FRENCH)) {
+class SushiScan :
+    MangaThemesia(
+        "Sushi-Scan",
+        "https://sushiscan.net",
+        "fr",
+        mangaUrlDirectory = "/catalogue",
+        dateFormat = SimpleDateFormat("MMMM dd, yyyy", Locale.FRENCH),
+    ),
+    ConfigurableSource {
+
+    private val preferences = Injekt.get<Application>().getSharedPreferences("source_$id", 0x0000)
+
+    override fun setupPreferenceScreen(screen: PreferenceScreen) {
+        addRandomUAPreferenceToScreen(screen)
+    }
 
     override val client: OkHttpClient = super.client.newBuilder()
+        .setRandomUserAgent(
+            preferences.getPrefUAType(),
+            preferences.getPrefCustomUA(),
+        )
         .rateLimit(2, 1, TimeUnit.SECONDS)
         .build()
 
     override fun headersBuilder(): Headers.Builder = super.headersBuilder()
+        .addCustomUA()
         .set("Referer", "$baseUrl$mangaUrlDirectory")
 
     override val altNamePrefix = "Nom alternatif : "
@@ -58,6 +86,13 @@ class SushiScan : MangaThemesia("Sushi-Scan", "https://sushiscan.net", "fr", man
         return imageUrls.mapIndexed { index, imageUrl -> Page(index, document.location(), imageUrl.replace("http://", "https://")) }
     }
 
+    private fun Headers.Builder.addCustomUA(): Headers.Builder {
+        preferences.getPrefCustomUA()
+            .takeIf { !it.isNullOrBlank() }
+            ?.let { set("User-Agent", it) }
+        return this
+    }
+
     @Serializable
     data class TSReader(
         val sources: List<ReaderImageSource>,