diff --git a/cmd/coordinator/coordinator.go b/cmd/coordinator/coordinator.go
index 100453f..2f52c1a 100644
--- a/cmd/coordinator/coordinator.go
+++ b/cmd/coordinator/coordinator.go
@@ -1917,10 +1917,6 @@
 				// return 1 * time.Minute // VMware boot of hermetic OS X
 			}
 		}
-		if goos == "linux" && arch == "arm" {
-			// Scaleway. Ready or not.
-			return 0
-		}
 	}
 	return 0
 }
diff --git a/cmd/coordinator/status.go b/cmd/coordinator/status.go
index acbf400..9d51e96 100644
--- a/cmd/coordinator/status.go
+++ b/cmd/coordinator/status.go
@@ -147,7 +147,6 @@
 func addHealthCheckers(ctx context.Context, sc *secret.Client) {
 	addHealthChecker(newMacHealthChecker())
 	addHealthChecker(newMacOSARM64Checker())
-	addHealthChecker(newScalewayHealthChecker())
 	addHealthChecker(newPacketHealthChecker())
 	addHealthChecker(newOSUPPC64Checker())
 	addHealthChecker(newOSUPPC64leChecker())
@@ -460,20 +459,6 @@
 	return hc.ExpectNum
 }
 
-func newScalewayHealthChecker() *healthChecker {
-	var hosts []string
-	for i := 1; i <= expectedHosts("host-linux-arm-scaleway"); i++ {
-		name := fmt.Sprintf("scaleway-prod-%02d", i)
-		hosts = append(hosts, name)
-	}
-	return &healthChecker{
-		ID:     "scaleway",
-		Title:  "Scaleway linux/arm machines",
-		DocURL: "https://github.com/golang/build/tree/master/env/linux-arm/scaleway",
-		Check:  reverseHostChecker(hosts),
-	}
-}
-
 func newPacketHealthChecker() *healthChecker {
 	var hosts []string
 	for i := 1; i <= expectedHosts("host-linux-arm64-packet"); i++ {
diff --git a/cmd/coordinator/status_test.go b/cmd/coordinator/status_test.go
index c0f70d1..51da086 100644
--- a/cmd/coordinator/status_test.go
+++ b/cmd/coordinator/status_test.go
@@ -91,8 +91,6 @@
 	}
 	for _, sub := range []string{
 		`<a href="/status/macs">MacStadium Mac VMs</a> [`,
-		`<a href="/status/scaleway">Scaleway linux/arm machines</a> [`,
-		`<li>scaleway-prod-02 not yet connected</li>`,
 		`<li>macstadium_host06a not yet connected</li>`,
 		`<a href="/status/allgood">All Good Test</a>: ok`,
 		`<li>test-info</li>`,
diff --git a/dashboard/builders.go b/dashboard/builders.go
index 3ce54d5..69d09c0 100644
--- a/dashboard/builders.go
+++ b/dashboard/builders.go
@@ -205,13 +205,6 @@
 		env:             []string{"GOROOT_BOOTSTRAP=/goboot"},
 		SSHUsername:     "root",
 	},
-	"host-linux-arm-scaleway": &HostConfig{
-		IsReverse:       true,
-		HermeticReverse: true,
-		ExpectNum:       50,
-		env:             []string{"GOROOT_BOOTSTRAP=/usr/local/go"},
-		SSHUsername:     "root",
-	},
 	"host-linux-arm5spacemonkey": &HostConfig{
 		IsReverse:   true,
 		ExpectNum:   3,
@@ -1961,36 +1954,6 @@
 		numTryTestHelpers: 4, // Target time is < 15 min for golang.org/issue/42661.
 	})
 	addBuilder(BuildConfig{
-		Name:     "linux-arm-scaleway",
-		HostType: "host-linux-arm-scaleway",
-		CrossCompileConfig: &CrossCompileConfig{
-			CompileHostType:    "host-linux-armhf-cross",
-			CCForTarget:        "arm-linux-gnueabihf-gcc",
-			GOARM:              "7",
-			AlwaysCrossCompile: false,
-		},
-		tryBot:            nil, // Issues #22748, #22749, #35628, #40872.
-		KnownIssue:        35628,
-		FlakyNet:          true,
-		numTestHelpers:    2,
-		numTryTestHelpers: 7,
-		distTestAdjust: func(run bool, distTest string, isNormalTry bool) bool {
-			switch distTest {
-			case "api", "reboot":
-				return false
-			}
-			return run
-		},
-	})
-	addBuilder(BuildConfig{
-		Name:          "linux-arm-nativemake",
-		Notes:         "runs make.bash on real ARM hardware, but does not run tests",
-		HostType:      "host-linux-arm-scaleway",
-		tryOnly:       true,
-		tryBot:        nil,
-		StopAfterMake: true,
-	})
-	addBuilder(BuildConfig{
 		Name:     "linux-arm-arm5spacemonkey",
 		HostType: "host-linux-arm5spacemonkey",
 		CrossCompileConfig: &CrossCompileConfig{
