https://railway.com/

页面构成与技术指标

正文

1132

操作候选

10

图片

60

HTML

352 KB

文案

标题字数
51
摘要字数
132
H1
1
H2
7

动作

主要入口

Learn more →

表单
0
站内链接
50
站外链接
2

安全与页面元信息

HTTPS
有
HSTS
无
CSP
有
nosniff
无
viewport
有
图标
有
JSON-LD
有
统计
无

构成

Tailwind

脚本
0 ext / 10 inline
Alt
29 missing
语言
en
第三方域
无

Lighthouse

移动端模拟 · 性能评分

21 / 100

2026-09-10 · 本次测试有警告,结果可能不完整。

查看详情

移动端模拟 · 实验室数据,非真实用户体验数据
2026-09-10T09:28:44.113Z · Lighthouse 13.4.1

本次测试有警告,结果可能不完整: The page loaded too slowly to finish within the time limit. Results may be incomplete.

性能21/ 100
可访问性97/ 100
最佳实践73/ 100
SEO100/ 100
LCP · 主要内容出现5,376 ms
CLS · 布局偏移0.233
TBT · 主线程阻塞3,423 ms
FCP · 首次内容绘制4,785 ms
SI · 视觉加载速度11,846 ms

分数会受服务器、网络和测试环境影响,独立于品味/转化评分。诊断保留 Lighthouse 原文。

Browser errors were logged to the console

Errors logged to the console indicate unresolved problems. They can come from network request failures and other browser concerns. Learn more about this errors in console diagnostic audit

对应元素与资源
{
  "type": "table",
  "items": [
    {
      "source": "exception",
      "description": "Error: Minified React error #421; visit https://reactjs.org/docs/error-decoder.html?invariant=421 for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\n    at cc (https://railway.com/assets/react-dom-DnBidG4-.js:8:9367)\n    at ac (https://railway.com/assets/react-dom-DnBidG4-.js:8:7321)\n    at Wl (https://railway.com/assets/react-dom-DnBidG4-.js:8:45245)\n    at Pl (https://railway.com/assets/react-dom-DnBidG4-.js:8:39294)\n    at Ml (https://railway.com/assets/react-dom-DnBidG4-.js:8:39225)\n    at jl (https://railway.com/assets/react-dom-DnBidG4-.js:8:39085)\n    at vl (https://railway.com/assets/react-dom-DnBidG4-.js:8:34264)\n    at te (https://railway.com/assets/react-dom-DnBidG4-.js:1:1616)\n    at MessagePort.se (https://railway.com/assets/react-dom-DnBidG4-.js:1:1986)",
      "sourceLocation": {
        "url": "https://railway.com/assets/main-D2KTMh0D.js",
        "line": 129,
        "type": "source-location",
        "column": 149466,
        "urlProvider": "network"
      }
    },
    {
      "source": "exception",
      "description": "Error: Minified React error #421; visit https://reactjs.org/docs/error-decoder.html?invariant=421 for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\n    at cc (https://railway.com/assets/react-dom-DnBidG4-.js:8:9367)\n    at ac (https://railway.com/assets/react-dom-DnBidG4-.js:8:7321)\n    at Wl (https://railway.com/assets/react-dom-DnBidG4-.js:8:45245)\n    at Pl (https://railway.com/assets/react-dom-DnBidG4-.js:8:39294)\n    at Ml (https://railway.com/assets/react-dom-DnBidG4-.js:8:39225)\n    at jl (https://railway.com/assets/react-dom-DnBidG4-.js:8:39085)\n    at vl (https://railway.com/assets/react-dom-DnBidG4-.js:8:34264)\n    at te (https://railway.com/assets/react-dom-DnBidG4-.js:1:1616)\n    at MessagePort.se (https://railway.com/assets/react-dom-DnBidG4-.js:1:1986)",
      "sourceLocation": {
        "url": "https://railway.com/assets/main-D2KTMh0D.js",
        "line": 129,
        "type": "source-location",
        "column": 149466,
        "urlProvider": "network"
      }
    },
    {
      "source": "exception",
      "description": "Error: Minified React error #421; visit https://reactjs.org/docs/error-decoder.html?invariant=421 for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\n    at cc (https://railway.com/assets/react-dom-DnBidG4-.js:8:9367)\n    at ac (https://railway.com/assets/react-dom-DnBidG4-.js:8:7321)\n    at Wl (https://railway.com/assets/react-dom-DnBidG4-.js:8:45245)\n    at Pl (https://railway.com/assets/react-dom-DnBidG4-.js:8:39294)\n    at Ml (https://railway.com/assets/react-dom-DnBidG4-.js:8:39225)\n    at jl (https://railway.com/assets/react-dom-DnBidG4-.js:8:39085)\n    at vl (https://railway.com/assets/react-dom-DnBidG4-.js:8:34264)\n    at te (https://railway.com/assets/react-dom-DnBidG4-.js:1:1616)\n    at MessagePort.se (https://railway.com/assets/react-dom-DnBidG4-.js:1:1986)",
      "sourceLocation": {
        "url": "https://railway.com/assets/main-D2KTMh0D.js",
        "line": 129,
        "type": "source-location",
        "column": 149466,
        "urlProvider": "network"
      }
    }
  ],
  "headings": [
    {
      "key": "sourceLocation",
      "label": "Source",
      "valueType": "source-location"
    },
    {
      "key": "description",
      "label": "Description",
      "valueType": "code"
    }
  ]
}

Uses third-party cookies

1 cookie found

Third-party cookies may be blocked in some contexts. Learn more about preparing for third-party cookie restrictions.

对应元素与资源
{
  "type": "table",
  "items": [
    {
      "url": "https://googleads.g.doubleclick.net/pagead/viewthroughconversion/17509959674/?random=1789032537272&cv=11&fst=1789032537272&bg=ffffff&guid=ON&async=1&en=gtag.config&gtm=45be6980v9228268922za200zd9228268922xec&gcd=13t3t3t3t5l1&dma=0&tag_exp=115938465~115938468~118897920~118897930~120032689~120213116~120385423~120469145~120469153~121045160&u_w=412&u_h=823&url=https%3A%2F%2Frailway.com%2F&rcb=9&frm=0&tiba=Railway%20%7C%20The%20all-in-one%20intelligent%20cloud%20provider&hn=www.googleadservices.com&npa=0&pscdl=noapi&auid=1202266241.1789032537&uaa=&uab=64&uafvl=Chromium%3B151.0.7922.34%7CNot%253DA%253FBrand%3B99.0.0.0&uamb=1&uam=moto%20g%20power%20(2022)&uap=Android&uapv=11.0&uaw=0&data=event%3Dgtag.config&ept=9&rfmt=3&fmt=4",
      "name": "test_cookie"
    }
  ],
  "headings": [
    {
      "key": "name",
      "label": "Name",
      "valueType": "text"
    },
    {
      "key": "url",
      "label": "URL",
      "valueType": "url"
    }
  ]
}

Minimize main-thread work

14.7 s

Consider reducing the time spent parsing, compiling and executing JS. You may find delivering smaller JS payloads helps with this. Learn how to minimize main-thread work

对应元素与资源
{
  "type": "table",
  "items": [
    {
      "group": "scriptEvaluation",
      "duration": 5622.939999999855,
      "groupLabel": "Script Evaluation"
    },
    {
      "group": "other",
      "duration": 5604.792000000056,
      "groupLabel": "Other"
    },
    {
      "group": "styleLayout",
      "duration": 1863.9999999999993,
      "groupLabel": "Style & Layout"
    },
    {
      "group": "garbageCollection",
      "duration": 691.9000000000005,
      "groupLabel": "Garbage Collection"
    },
    {
      "group": "paintCompositeRender",
      "duration": 588.1720000000023,
      "groupLabel": "Rendering"
    },
    {
      "group": "scriptParseCompile",
      "duration": 190.60799999999998,
      "groupLabel": "Script Parsing & Compilation"
    },
    {
      "group": "parseHTML",
      "duration": 110.36000000000007,
      "groupLabel": "Parse HTML & CSS"
    }
  ],
  "headings": [
    {
      "key": "groupLabel",
      "label": "Category",
      "valueType": "text"
    },
    {
      "key": "duration",
      "label": "Time Spent",
      "valueType": "ms",
      "granularity": 1
    }
  ],
  "sortedBy": [
    "duration"
  ]
}

Reduce JavaScript execution time

5.6 s

Consider reducing the time spent parsing, compiling, and executing JS. You may find delivering smaller JS payloads helps with this. Learn how to reduce Javascript execution time.

对应元素与资源
{
  "type": "table",
  "items": [
    {
      "url": "Unattributable",
      "total": 4731.295999999886,
      "scripting": 1178.2399999999818,
      "scriptParseCompile": 0
    },
    {
      "url": "https://railway.com/assets/react-dom-DnBidG4-.js",
      "total": 3759.4559999999265,
      "scripting": 3409.0079999999257,
      "scriptParseCompile": 0.172
    },
    {
      "url": "https://railway.com/",
      "total": 3472.716000000002,
      "scripting": 76.78799999999997,
      "scriptParseCompile": 34.083999999999996
    },
    {
      "url": "https://railway.com/assets/use-constant-mCn3svpG.js",
      "total": 537.1320000000001,
      "scripting": 39.55599999999998,
      "scriptParseCompile": 0.056
    },
    {
      "url": "https://cmp.osano.com/qVHEV4lSSU/738deb1e-f024-459e-ae0a-2e6a0d461ea8/osano.js",
      "total": 406.9039999999999,
      "scripting": 329.3639999999999,
      "scriptParseCompile": 10.16
    },
    {
      "url": "https://www.googletagmanager.com/gtag/js?id=AW-17509959674",
      "total": 353.94799999999964,
      "scripting": 301.5879999999996,
      "scriptParseCompile": 48.760000000000005
    },
    {
      "url": "https://railway.com/assets/modal-Bzr_UYzv.js",
      "total": 153.76,
      "scripting": 73.02800000000003,
      "scriptParseCompile": 13.732
    },
    {
      "url": "https://railway.com/assets/ClientHead-B2uoCLPZ.js",
      "total": 114.848,
      "scripting": 0,
      "scriptParseCompile": 0.088
    },
    {
      "url": "https://railway.com/assets/extends-L-OGrCwB.js",
      "total": 80.048,
      "scripting": 0,
      "scriptParseCompile": 0.092
    },
    {
      "url": "https://cmp.osano.com/qVHEV4lSSU/738deb1e-f024-459e-ae0a-2e6a0d461ea8/osano-ui.js",
      "total": 61.944,
      "scripting": 34.64000000000001,
      "scriptParseCompile": 17.287999999999997
    },
    {
      "url": "https://railway.com/assets/json-ld-BNIkTYD-.js",
      "total": 52.068,
      "scripting": 0,
      "scriptParseCompile": 0.168
    }
  ],
  "summary": {
    "wastedMs": 5566.811999999907
  },
  "headings": [
    {
      "key": "url",
      "label": "URL",
      "valueType": "url"
    },
    {
      "key": "total",
      "label": "Total CPU Time",
      "valueType": "ms",
      "granularity": 1
    },
    {
      "key": "scripting",
      "label": "Script Evaluation",
      "valueType": "ms",
      "granularity": 1
    },
    {
      "key": "scriptParseCompile",
      "label": "Script Parse",
      "valueType": "ms",
      "granularity": 1
    }
  ],
  "sortedBy": [
    "total"
  ]
}

Avoid large layout shifts

5 layout shifts found

These are the largest layout shifts observed on the page. Each table item represents a single layout shift, and shows the element that shifted the most. Below each item are possible root causes that led to the layout shift. Some of these layout shifts may not be included in the CLS metric value due to windowing. Learn how to improve CLS

对应元素与资源
{
  "type": "table",
  "items": [
    {
      "node": {
        "lhId": "page-5-DIV",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,2,DIV",
        "type": "node",
        "snippet": "<div class=\"bg-sl-footer border-t border-sl-border/10\">",
        "selector": "body > div > div.secret-landing > div.bg-sl-footer",
        "nodeLabel": "Product\n\nFeatures\n\nMobile app\n\nPricing\n\nAgents\n\nChangelog\n\nTemplates\n\nTemplate …",
        "boundingRect": {
          "top": 11857,
          "left": 0,
          "right": 412,
          "width": 412,
          "bottom": 13035,
          "height": 1178
        }
      },
      "score": 0.2332928311057108,
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "cause": "Media element lacking an explicit size",
            "extra": {
              "lhId": "page-9-IMG",
              "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,1,DIV,0,SECTION,0,DIV,1,DIV,0,IMG",
              "type": "node",
              "snippet": "<img class=\"absolute bottom-0 left-0 w-full object-cover object-bottom\" src=\"/secret-landing/build-and-deploy/maskgroup-forest.webp\" alt=\"\">",
              "selector": "section.relative > div.max-w-[1696px] > div.absolute > img.absolute",
              "nodeLabel": "section.relative > div.max-w-[1696px] > div.absolute > img.absolute",
              "boundingRect": {
                "top": 1676,
                "left": 16,
                "right": 396,
                "width": 380,
                "bottom": 1956,
                "height": 280
              }
            }
          }
        ]
      }
    },
    {
      "node": {
        "lhId": "page-3-DIV",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,0,SECTION,0,DIV,0,DIV,3,DIV",
        "type": "node",
        "snippet": "<div class=\"absolute left-0 right-0 bottom-0 w-full h-[390px] bg-cover bg-center point…\">",
        "selector": "section.px-4 > div.max-w-[1696px] > div.absolute > div.absolute",
        "nodeLabel": "section.px-4 > div.max-w-[1696px] > div.absolute > div.absolute",
        "boundingRect": {
          "top": 225,
          "left": 16,
          "right": 396,
          "width": 380,
          "bottom": 615,
          "height": 390
        }
      },
      "score": 0.03745148911729765,
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "cause": "Web font loaded",
            "extra": {
              "type": "url",
              "value": "https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7W0Q5nw.woff2"
            }
          }
        ]
      }
    },
    {
      "node": {
        "lhId": "page-2-H1",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,0,SECTION,0,DIV,1,DIV,0,H1",
        "type": "node",
        "snippet": "<h1 class=\"font-plexSerif font-medium text-white tracking-[-1.96px] leading-[1.12] te…\">",
        "selector": "section.px-4 > div.max-w-[1696px] > div.relative > h1.font-plexSerif",
        "nodeLabel": "Ship software peacefully",
        "boundingRect": {
          "top": 162,
          "left": 32,
          "right": 380,
          "width": 348,
          "bottom": 252,
          "height": 90
        }
      },
      "score": 0.002603207828602947,
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "cause": "Web font loaded",
            "extra": {
              "type": "url",
              "value": "https://fonts.gstatic.com/s/ibmplexserif/v20/jizAREVNn1dOx-zrZ2X3pZvkTi3s-CI0q1vjitOh.woff2"
            }
          }
        ]
      }
    },
    {
      "score": 0.0002614495741962572,
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "cause": "Web font loaded",
            "extra": {
              "type": "url",
              "value": "https://fonts.gstatic.com/s/ibmplexserif/v20/jizDREVNn1dOx-zrZ2X3pZvkTiUf2zcZiVbJ.woff2"
            }
          }
        ]
      }
    },
    {
      "node": {
        "lhId": "page-4-IMG",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,0,SECTION,0,DIV,3,DIV,0,DIV,0,DIV,1,DIV,4,DIV,0,IMG",
        "type": "node",
        "snippet": "<img alt=\"Reducto\" src=\"https://cms.railway.com/media/website-original-aaa25f3fa0403baeea3be0442ad…\" width=\"71\" height=\"24\" class=\"max-h-4 sm:max-h-none max-w-[100px] sm:max-w-none h-6 object-contain w-aut…\" loading=\"lazy\">",
        "selector": "div.relative > div.relative > div.flex > img.max-h-4",
        "nodeLabel": "Reducto",
        "boundingRect": {
          "top": 583,
          "left": 60,
          "right": 150,
          "width": 90,
          "bottom": 599,
          "height": 16
        }
      },
      "score": 0.0001107021788768897,
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "cause": "Media element lacking an explicit size",
            "extra": {
              "lhId": "page-4-IMG",
              "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,0,SECTION,0,DIV,3,DIV,0,DIV,0,DIV,1,DIV,4,DIV,0,IMG",
              "type": "node",
              "snippet": "<img alt=\"Reducto\" src=\"https://cms.railway.com/media/website-original-aaa25f3fa0403baeea3be0442ad…\" width=\"71\" height=\"24\" class=\"max-h-4 sm:max-h-none max-w-[100px] sm:max-w-none h-6 object-contain w-aut…\" loading=\"lazy\">",
              "selector": "div.relative > div.relative > div.flex > img.max-h-4",
              "nodeLabel": "Reducto",
              "boundingRect": {
                "top": 583,
                "left": 60,
                "right": 150,
                "width": 90,
                "bottom": 599,
                "height": 16
              }
            }
          }
        ]
      }
    }
  ],
  "headings": [
    {
      "key": "node",
      "label": "Element",
      "valueType": "node",
      "subItemsHeading": {
        "key": "extra"
      }
    },
    {
      "key": "score",
      "label": "Layout shift score",
      "valueType": "numeric",
      "granularity": 0.001,
      "subItemsHeading": {
        "key": "cause",
        "valueType": "text"
      }
    }
  ]
}

Image elements do not have explicit `width` and `height`

Set an explicit width and height on image elements to reduce layout shifts and improve CLS. Learn how to set image dimensions

对应元素与资源
{
  "type": "table",
  "items": [
    {
      "url": "https://railway.com/secret-landing/trust/logo-g2x.svg",
      "node": {
        "lhId": "1-111-IMG",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,2,SECTION,0,DIV,0,DIV,1,DIV,1,DIV,2,DIV,0,IMG",
        "type": "node",
        "snippet": "<img alt=\"\" src=\"/secret-landing/trust/logo-g2x.svg\" class=\"h-8 w-auto brightness-0 invert\" loading=\"lazy\">",
        "selector": "div.mt-16 > div.bg-white/5 > div.relative > img.h-8",
        "nodeLabel": "div.mt-16 > div.bg-white/5 > div.relative > img.h-8",
        "boundingRect": {
          "top": 8413,
          "left": 80,
          "right": 168,
          "width": 88,
          "bottom": 8445,
          "height": 32
        }
      }
    },
    {
      "url": "https://railway.com/secret-landing/trust/logo-bilt.svg",
      "node": {
        "lhId": "1-109-IMG",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,2,SECTION,0,DIV,0,DIV,1,DIV,0,DIV,2,DIV,0,IMG",
        "type": "node",
        "snippet": "<img alt=\"\" src=\"/secret-landing/trust/logo-bilt.svg\" class=\"h-8 w-auto brightness-0 invert\" loading=\"lazy\">",
        "selector": "div.mt-16 > div.bg-white/5 > div.relative > img.h-8",
        "nodeLabel": "div.mt-16 > div.bg-white/5 > div.relative > img.h-8",
        "boundingRect": {
          "top": 7945,
          "left": 80,
          "right": 199,
          "width": 119,
          "bottom": 7977,
          "height": 32
        }
      }
    },
    {
      "url": "https://railway.com/landing-2/logos/comp/logo-digitalocean.svg",
      "node": {
        "lhId": "1-81-IMG",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,1,DIV,0,SECTION,0,DIV,0,DIV,1,DIV,1,DIV,1,DIV,1,DIV,1,DIV,3,IMG",
        "type": "node",
        "snippet": "<img src=\"/landing-2/logos/comp/logo-digitalocean.svg\" alt=\"Digitalocean logo\" class=\"h-6 brightness-0 invert\" loading=\"lazy\">",
        "selector": "div.mt-0 > div.flex > div.flex > img.h-6",
        "nodeLabel": "Digitalocean logo",
        "boundingRect": {
          "top": 1868,
          "left": 170,
          "right": 194,
          "width": 24,
          "bottom": 1892,
          "height": 24
        }
      }
    },
    {
      "url": "https://railway.com/landing-2/logos/comp/logo-cloudrun.svg",
      "node": {
        "lhId": "1-82-IMG",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,1,DIV,0,SECTION,0,DIV,0,DIV,1,DIV,1,DIV,1,DIV,1,DIV,1,DIV,4,IMG",
        "type": "node",
        "snippet": "<img src=\"/landing-2/logos/comp/logo-cloudrun.svg\" alt=\"Cloudrun logo\" class=\"h-6 brightness-0 invert\" loading=\"lazy\">",
        "selector": "div.mt-0 > div.flex > div.flex > img.h-6",
        "nodeLabel": "Cloudrun logo",
        "boundingRect": {
          "top": 1868,
          "left": 210,
          "right": 234,
          "width": 24,
          "bottom": 1892,
          "height": 24
        }
      }
    },
    {
      "url": "https://railway.com/landing-2/logos/comp/logo-opentelemetry.svg",
      "node": {
        "lhId": "1-101-IMG",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,1,DIV,3,SECTION,0,DIV,0,DIV,1,DIV,1,DIV,1,DIV,1,DIV,1,DIV,2,IMG",
        "type": "node",
        "snippet": "<img src=\"/landing-2/logos/comp/logo-opentelemetry.svg\" alt=\"Opentelemetry logo\" class=\"h-6 brightness-0 invert\" loading=\"lazy\">",
        "selector": "div.mt-0 > div.flex > div.flex > img.h-6",
        "nodeLabel": "Opentelemetry logo",
        "boundingRect": {
          "top": 5940,
          "left": 130,
          "right": 154,
          "width": 24,
          "bottom": 5964,
          "height": 24
        }
      }
    },
    {
      "url": "https://railway.com/secret-landing/trust/logo-mappa.svg",
      "node": {
        "lhId": "1-113-IMG",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,2,SECTION,0,DIV,0,DIV,1,DIV,2,DIV,2,DIV,0,IMG",
        "type": "node",
        "snippet": "<img alt=\"\" src=\"/secret-landing/trust/logo-mappa.svg\" class=\"h-8 w-auto brightness-0 invert\" loading=\"lazy\">",
        "selector": "div.mt-16 > div.bg-white/5 > div.relative > img.h-8",
        "nodeLabel": "div.mt-16 > div.bg-white/5 > div.relative > img.h-8",
        "boundingRect": {
          "top": 8881,
          "left": 80,
          "right": 237,
          "width": 157,
          "bottom": 8913,
          "height": 32
        }
      }
    },
    {
      "url": "https://railway.com/landing-2/logos/comp/logo-helm.svg",
      "node": {
        "lhId": "1-79-IMG",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,1,DIV,0,SECTION,0,DIV,0,DIV,1,DIV,1,DIV,1,DIV,1,DIV,1,DIV,1,IMG",
        "type": "node",
        "snippet": "<img src=\"/landing-2/logos/comp/logo-helm.svg\" alt=\"Helm logo\" class=\"h-6 brightness-0 invert\" loading=\"lazy\">",
        "selector": "div.mt-0 > div.flex > div.flex > img.h-6",
        "nodeLabel": "Helm logo",
        "boundingRect": {
          "top": 1868,
          "left": 89,
          "right": 113,
          "width": 24,
          "bottom": 1892,
          "height": 24
        }
      }
    },
    {
      "url": "https://railway.com/landing-2/logos/comp/logo-docker.svg",
      "node": {
        "lhId": "1-78-IMG",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,1,DIV,0,SECTION,0,DIV,0,DIV,1,DIV,1,DIV,1,DIV,1,DIV,1,DIV,0,IMG",
        "type": "node",
        "snippet": "<img src=\"/landing-2/logos/comp/logo-docker.svg\" alt=\"Docker logo\" class=\"h-6 brightness-0 invert\" loading=\"lazy\">",
        "selector": "div.mt-0 > div.flex > div.flex > img.h-6",
        "nodeLabel": "Docker logo",
        "boundingRect": {
          "top": 1868,
          "left": 48,
          "right": 73,
          "width": 25,
          "bottom": 1892,
          "height": 24
        }
      }
    },
    {
      "url": "https://railway.com/landing-2/logos/comp/logo-heroku.svg",
      "node": {
        "lhId": "1-80-IMG",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,1,DIV,0,SECTION,0,DIV,0,DIV,1,DIV,1,DIV,1,DIV,1,DIV,1,DIV,2,IMG",
        "type": "node",
        "snippet": "<img src=\"/landing-2/logos/comp/logo-heroku.svg\" alt=\"Heroku logo\" class=\"h-6 brightness-0 invert\" loading=\"lazy\">",
        "selector": "div.mt-0 > div.flex > div.flex > img.h-6",
        "nodeLabel": "Heroku logo",
        "boundingRect": {
          "top": 1868,
          "left": 129,
          "right": 154,
          "width": 25,
          "bottom": 1892,
          "height": 24
        }
      }
    },
    {
      "url": "https://railway.com/landing-2/logos/comp/logo-cilium.svg",
      "node": {
        "lhId": "1-89-IMG",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,1,DIV,1,SECTION,0,DIV,0,DIV,0,DIV,1,DIV,2,DIV,1,DIV,0,DIV,1,DIV,1,IMG",
        "type": "node",
        "snippet": "<img src=\"/landing-2/logos/comp/logo-cilium.svg\" alt=\"Cilium logo\" class=\"h-6 brightness-0 invert\" loading=\"lazy\">",
        "selector": "div.mt-6 > div.flex > div.flex > img.h-6",
        "nodeLabel": "Cilium logo",
        "boundingRect": {
          "top": 2630,
          "left": 68,
          "right": 91,
          "width": 23,
          "bottom": 2654,
          "height": 24
        }
      }
    },
    {
      "url": "https://railway.com/landing-2/logos/comp/logo-kubernetes.svg",
      "node": {
        "lhId": "1-94-IMG",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,1,DIV,2,SECTION,0,DIV,0,DIV,0,DIV,1,DIV,2,DIV,1,DIV,0,DIV,1,DIV,0,IMG",
        "type": "node",
        "snippet": "<img src=\"/landing-2/logos/comp/logo-kubernetes.svg\" alt=\"Kubernetes logo\" class=\"h-6 brightness-0 invert\" loading=\"lazy\">",
        "selector": "div.mt-6 > div.flex > div.flex > img.h-6",
        "nodeLabel": "Kubernetes logo",
        "boundingRect": {
          "top": 3953,
          "left": 28,
          "right": 51,
          "width": 23,
          "bottom": 3977,
          "height": 24
        }
      }
    },
    {
      "url": "https://railway.com/landing-2/logos/comp/logo-amazon-ecs.svg",
      "node": {
        "lhId": "1-95-IMG",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,1,DIV,2,SECTION,0,DIV,0,DIV,0,DIV,1,DIV,2,DIV,1,DIV,0,DIV,1,DIV,1,IMG",
        "type": "node",
        "snippet": "<img src=\"/landing-2/logos/comp/logo-amazon-ecs.svg\" alt=\"Amazon-ecs logo\" class=\"h-6 brightness-0 invert\" loading=\"lazy\">",
        "selector": "div.mt-6 > div.flex > div.flex > img.h-6",
        "nodeLabel": "Amazon-ecs logo",
        "boundingRect": {
          "top": 3953,
          "left": 67,
          "right": 90,
          "width": 23,
          "bottom": 3977,
          "height": 24
        }
      }
    },
    {
      "url": "https://railway.com/landing-2/logos/comp/logo-nomad.svg",
      "node": {
        "lhId": "1-96-IMG",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,1,DIV,2,SECTION,0,DIV,0,DIV,0,DIV,1,DIV,2,DIV,1,DIV,0,DIV,1,DIV,2,IMG",
        "type": "node",
        "snippet": "<img src=\"/landing-2/logos/comp/logo-nomad.svg\" alt=\"Nomad logo\" class=\"h-6 brightness-0 invert\" loading=\"lazy\">",
        "selector": "div.mt-6 > div.flex > div.flex > img.h-6",
        "nodeLabel": "Nomad logo",
        "boundingRect": {
          "top": 3953,
          "left": 106,
          "right": 129,
          "width": 23,
          "bottom": 3977,
          "height": 24
        }
      }
    },
    {
      "url": "https://railway.com/landing-2/logos/comp/logo-betterstack.svg",
      "node": {
        "lhId": "1-97-IMG",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,1,DIV,2,SECTION,0,DIV,0,DIV,0,DIV,1,DIV,2,DIV,1,DIV,0,DIV,1,DIV,3,IMG",
        "type": "node",
        "snippet": "<img src=\"/landing-2/logos/comp/logo-betterstack.svg\" alt=\"Betterstack logo\" class=\"h-6 brightness-0 invert\" loading=\"lazy\">",
        "selector": "div.mt-6 > div.flex > div.flex > img.h-6",
        "nodeLabel": "Betterstack logo",
        "boundingRect": {
          "top": 3953,
          "left": 145,
          "right": 168,
          "width": 23,
          "bottom": 3977,
          "height": 24
        }
      }
    },
    {
      "url": "https://railway.com/landing-2/logos/comp/logo-datadog.svg",
      "node": {
        "lhId": "1-99-IMG",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,1,DIV,3,SECTION,0,DIV,0,DIV,1,DIV,1,DIV,1,DIV,1,DIV,1,DIV,0,IMG",
        "type": "node",
        "snippet": "<img src=\"/landing-2/logos/comp/logo-datadog.svg\" alt=\"Datadog logo\" class=\"h-6 brightness-0 invert\" loading=\"lazy\">",
        "selector": "div.mt-0 > div.flex > div.flex > img.h-6",
        "nodeLabel": "Datadog logo",
        "boundingRect": {
          "top": 5940,
          "left": 48,
          "right": 73,
          "width": 25,
          "bottom": 5964,
          "height": 24
        }
      }
    },
    {
      "url": "https://railway.com/landing-2/logos/comp/logo-sentry.svg",
      "node": {
        "lhId": "1-100-IMG",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,1,DIV,3,SECTION,0,DIV,0,DIV,1,DIV,1,DIV,1,DIV,1,DIV,1,DIV,1,IMG",
        "type": "node",
        "snippet": "<img src=\"/landing-2/logos/comp/logo-sentry.svg\" alt=\"Sentry logo\" class=\"h-6 brightness-0 invert\" loading=\"lazy\">",
        "selector": "div.mt-0 > div.flex > div.flex > img.h-6",
        "nodeLabel": "Sentry logo",
        "boundingRect": {
          "top": 5940,
          "left": 89,
          "right": 114,
          "width": 25,
          "bottom": 5964,
          "height": 24
        }
      }
    },
    {
      "url": "https://railway.com/landing-2/logos/comp/logo-envoy.svg",
      "node": {
        "lhId": "1-88-IMG",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,1,DIV,1,SECTION,0,DIV,0,DIV,0,DIV,1,DIV,2,DIV,1,DIV,0,DIV,1,DIV,0,IMG",
        "type": "node",
        "snippet": "<img src=\"/landing-2/logos/comp/logo-envoy.svg\" alt=\"Envoy logo\" class=\"h-6 brightness-0 invert\" loading=\"lazy\">",
        "selector": "div.mt-6 > div.flex > div.flex > img.h-6",
        "nodeLabel": "Envoy logo",
        "boundingRect": {
          "top": 2630,
          "left": 28,
          "right": 52,
          "width": 24,
          "bottom": 2654,
          "height": 24
        }
      }
    },
    {
      "url": "https://railway.com/landing-2/logos/comp/logo-nginx.svg",
      "node": {
        "lhId": "1-90-IMG",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,1,DIV,1,SECTION,0,DIV,0,DIV,0,DIV,1,DIV,2,DIV,1,DIV,0,DIV,1,DIV,2,IMG",
        "type": "node",
        "snippet": "<img src=\"/landing-2/logos/comp/logo-nginx.svg\" alt=\"Nginx logo\" class=\"h-6 brightness-0 invert\" loading=\"lazy\">",
        "selector": "div.mt-6 > div.flex > div.flex > img.h-6",
        "nodeLabel": "Nginx logo",
        "boundingRect": {
          "top": 2630,
          "left": 107,
          "right": 131,
          "width": 24,
          "bottom": 2654,
          "height": 24
        }
      }
    },
    {
      "url": "https://railway.com/landing-2/logos/comp/logo-istio.svg",
      "node": {
        "lhId": "1-91-IMG",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,1,DIV,1,SECTION,0,DIV,0,DIV,0,DIV,1,DIV,2,DIV,1,DIV,0,DIV,1,DIV,3,IMG",
        "type": "node",
        "snippet": "<img src=\"/landing-2/logos/comp/logo-istio.svg\" alt=\"Istio logo\" class=\"h-6 brightness-0 invert\" loading=\"lazy\">",
        "selector": "div.mt-6 > div.flex > div.flex > img.h-6",
        "nodeLabel": "Istio logo",
        "boundingRect": {
          "top": 2630,
          "left": 147,
          "right": 171,
          "width": 24,
          "bottom": 2654,
          "height": 24
        }
      }
    },
    {
      "url": "https://railway.com/landing-2/logos/comp/logo-haproxy.svg",
      "node": {
        "lhId": "1-92-IMG",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,1,DIV,1,SECTION,0,DIV,0,DIV,0,DIV,1,DIV,2,DIV,1,DIV,0,DIV,1,DIV,4,IMG",
        "type": "node",
        "snippet": "<img src=\"/landing-2/logos/comp/logo-haproxy.svg\" alt=\"Haproxy logo\" class=\"h-6 brightness-0 invert\" loading=\"lazy\">",
        "selector": "div.mt-6 > div.flex > div.flex > img.h-6",
        "nodeLabel": "Haproxy logo",
        "boundingRect": {
          "top": 2630,
          "left": 187,
          "right": 211,
          "width": 24,
          "bottom": 2654,
          "height": 24
        }
      }
    },
    {
      "url": "https://railway.com/landing-2/logos/comp/logo-terraform.svg",
      "node": {
        "lhId": "1-107-IMG",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,1,DIV,4,SECTION,0,DIV,0,DIV,0,DIV,4,DIV,2,DIV,1,DIV,0,IMG",
        "type": "node",
        "snippet": "<img src=\"/landing-2/logos/comp/logo-terraform.svg\" alt=\"Terraform logo\" class=\"h-6 brightness-0 invert\" loading=\"lazy\">",
        "selector": "div.md:col-start-2 > div.flex > div.flex > img.h-6",
        "nodeLabel": "Terraform logo",
        "boundingRect": {
          "top": 7349,
          "left": 40,
          "right": 64,
          "width": 24,
          "bottom": 7373,
          "height": 24
        }
      }
    },
    {
      "url": "https://railway.com/landing-2/logos/comp/logo-spacelift.svg",
      "node": {
        "lhId": "1-108-IMG",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,1,DIV,4,SECTION,0,DIV,0,DIV,0,DIV,4,DIV,2,DIV,1,DIV,1,IMG",
        "type": "node",
        "snippet": "<img src=\"/landing-2/logos/comp/logo-spacelift.svg\" alt=\"Spacelift logo\" class=\"h-6 brightness-0 invert\" loading=\"lazy\">",
        "selector": "div.md:col-start-2 > div.flex > div.flex > img.h-6",
        "nodeLabel": "Spacelift logo",
        "boundingRect": {
          "top": 7349,
          "left": 80,
          "right": 104,
          "width": 24,
          "bottom": 7373,
          "height": 24
        }
      }
    },
    {
      "url": "",
      "node": {
        "lhId": "1-127-IMG",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,3,SECTION,2,DIV,0,DIV,0,DIV,2,DIV,0,IMG",
        "type": "node",
        "snippet": "<img src=\"\" alt=\"\" loading=\"lazy\" class=\"h-[210px] block max-w-full max-h-full object-cover\">",
        "selector": "div.relative > div.relative > div.flex > img.h-[210px]",
        "nodeLabel": "div.relative > div.relative > div.flex > img.h-[210px]",
        "boundingRect": {
          "top": 11647,
          "left": 0,
          "right": 412,
          "width": 412,
          "bottom": 11857,
          "height": 210
        }
      }
    }
  ],
  "headings": [
    {
      "key": "node",
      "label": "",
      "valueType": "node"
    },
    {
      "key": "url",
      "label": "URL",
      "valueType": "url"
    }
  ]
}

Missing source maps for large first-party JavaScript

Source maps translate minified code to the original source code. This helps developers debug in production. In addition, Lighthouse is able to provide further insights. Consider deploying source maps to take advantage of these benefits. Learn more about source maps.

对应元素与资源
{
  "type": "table",
  "items": [
    {
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "error": "Large JavaScript file is missing a source map"
          }
        ]
      },
      "scriptUrl": "https://railway.com/assets/ScaleAndGrowAnimation-DySs9KdL.js"
    },
    {
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "error": "Large JavaScript file is missing a source map"
          }
        ]
      },
      "scriptUrl": "https://railway.com/assets/modal-Bzr_UYzv.js"
    },
    {
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "error": "Large JavaScript file is missing a source map"
          }
        ]
      },
      "scriptUrl": "https://railway.com/assets/main-D2KTMh0D.js"
    },
    {
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "error": "Large JavaScript file is missing a source map"
          }
        ]
      },
      "scriptUrl": "https://railway.com/assets/EvolveAndCollaborateAnimation-BI5N3ctA.js"
    },
    {
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "error": "Error: Map has no `mappings` field"
          }
        ]
      },
      "scriptUrl": "https://cmp.osano.com/qVHEV4lSSU/738deb1e-f024-459e-ae0a-2e6a0d461ea8/osano.js",
      "sourceMapUrl": "https://cmp.osano.com/qVHEV4lSSU/738deb1e-f024-459e-ae0a-2e6a0d461ea8/osano.js.map"
    },
    {
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "error": "Error: Map has no `mappings` field"
          }
        ]
      },
      "scriptUrl": "https://cmp.osano.com/qVHEV4lSSU/738deb1e-f024-459e-ae0a-2e6a0d461ea8/osano-ui.js",
      "sourceMapUrl": "https://cmp.osano.com/qVHEV4lSSU/738deb1e-f024-459e-ae0a-2e6a0d461ea8/osano-ui.js.map"
    }
  ],
  "headings": [
    {
      "key": "scriptUrl",
      "label": "URL",
      "valueType": "url",
      "subItemsHeading": {
        "key": "error"
      }
    },
    {
      "key": "sourceMapUrl",
      "label": "Map URL",
      "valueType": "url"
    }
  ]
}

Background and foreground colors do not have a sufficient contrast ratio.

Low-contrast text is difficult or impossible for many users to read. Learn how to provide sufficient color contrast.

对应元素与资源
{
  "type": "table",
  "items": [
    {
      "node": {
        "lhId": "1-0-DIV",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,1,DIV,4,SECTION,0,DIV,0,DIV,0,DIV,4,DIV,2,DIV,0,DIV,1,DIV",
        "type": "node",
        "snippet": "<div class=\"text-base leading-6 font-medium text-white\">",
        "selector": "div.md:col-start-2 > div.flex > div.flex > div.text-base",
        "nodeLabel": "Alternative to",
        "explanation": "Fix any of the following:\n  Element has insufficient color contrast of 3.81 (foreground color: #717077, background color: #13111c, font size: 12.0pt (16px), font weight: normal). Expected contrast ratio of 4.5:1",
        "boundingRect": {
          "top": 7313,
          "left": 76,
          "right": 178,
          "width": 102,
          "bottom": 7337,
          "height": 24
        }
      },
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "relatedNode": {
              "lhId": "1-1-DIV",
              "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,1,DIV,4,SECTION,0,DIV",
              "type": "node",
              "snippet": "<div class=\"max-w-[1696px] mx-auto relative rounded-2xl overflow-clip bg-oatmeal\">",
              "selector": "main > div.px-4 > section.relative > div.max-w-[1696px]",
              "nodeLabel": "Evolve and collaborate\nFinally, a development workflow that actually flows.\n\nSp…",
              "boundingRect": {
                "top": 6028,
                "left": 16,
                "right": 396,
                "width": 380,
                "bottom": 7373,
                "height": 1345
              }
            }
          }
        ]
      }
    },
    {
      "node": {
        "lhId": "1-2-DIV",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,2,SECTION,0,DIV,1,DIV,0,DIV,0,DIV,1,DIV,0,DIV,1,DIV,1,DIV",
        "type": "node",
        "snippet": "<div class=\"text-white/50\">",
        "selector": "div.bg-white/5 > div.flex > div.text-sm > div.text-white/50",
        "nodeLabel": "@PraveenTcom",
        "explanation": "Fix any of the following:\n  Element has insufficient color contrast of 3.4 (foreground color: #7c747b, background color: #2d212b, font size: 10.5pt (14px), font weight: normal). Expected contrast ratio of 4.5:1",
        "boundingRect": {
          "top": 9705,
          "left": -64,
          "right": 94,
          "width": 157,
          "bottom": 9725,
          "height": 20
        }
      },
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "relatedNode": {
              "lhId": "1-3-DIV",
              "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,2,SECTION,0,DIV,1,DIV,0,DIV,0,DIV,1,DIV",
              "type": "node",
              "snippet": "<div class=\"bg-white/5 outline outline-1 outline-offset-[-1px] outline-white/25 rounde…\">",
              "selector": "div.pb-20 > div.group > div.flex > div.bg-white/5",
              "nodeLabel": "Praveen Thirumurugan\n@PraveenTcom\nInitial impressions on using @Railway is amaz…",
              "boundingRect": {
                "top": 9661,
                "left": -140,
                "right": 220,
                "width": 360,
                "bottom": 9907,
                "height": 246
              }
            }
          },
          {
            "relatedNode": {
              "lhId": "1-4-DIV",
              "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,2,SECTION,0,DIV",
              "type": "node",
              "snippet": "<div class=\"max-w-[1696px] mx-auto rounded-2xl overflow-hidden bg-[#55394f] dark:bg-[#…\">",
              "selector": "div.secret-landing > main > section.px-4 > div.max-w-[1696px]",
              "nodeLabel": "Trusted by the best in business\n\nRailway supports great software teams wherever…",
              "boundingRect": {
                "top": 7469,
                "left": 16,
                "right": 396,
                "width": 380,
                "bottom": 9987,
                "height": 2518
              }
            }
          }
        ]
      }
    },
    {
      "node": {
        "lhId": "1-5-DIV",
        "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,2,SECTION,0,DIV,1,DIV,0,DIV,0,DIV,2,DIV,0,DIV,1,DIV,1,DIV",
        "type": "node",
        "snippet": "<div class=\"text-white/50\">",
        "selector": "div.bg-white/5 > div.flex > div.text-sm > div.text-white/50",
        "nodeLabel": "@spanish_vanish",
        "explanation": "Fix any of the following:\n  Element has insufficient color contrast of 3.4 (foreground color: #7c747b, background color: #2d212b, font size: 10.5pt (14px), font weight: normal). Expected contrast ratio of 4.5:1",
        "boundingRect": {
          "top": 9705,
          "left": 304,
          "right": 417,
          "width": 113,
          "bottom": 9725,
          "height": 20
        }
      },
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "relatedNode": {
              "lhId": "1-6-DIV",
              "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,2,SECTION,0,DIV,1,DIV,0,DIV,0,DIV,2,DIV",
              "type": "node",
              "snippet": "<div class=\"bg-white/5 outline outline-1 outline-offset-[-1px] outline-white/25 rounde…\">",
              "selector": "div.pb-20 > div.group > div.flex > div.bg-white/5",
              "nodeLabel": "Brib\n@spanish_vanish\nI'm super bullish for the @Railway. They just started with…",
              "boundingRect": {
                "top": 9661,
                "left": 228,
                "right": 588,
                "width": 360,
                "bottom": 9907,
                "height": 246
              }
            }
          },
          {
            "relatedNode": {
              "lhId": "1-4-DIV",
              "path": "1,HTML,1,BODY,1,DIV,2,DIV,1,MAIN,2,SECTION,0,DIV",
              "type": "node",
              "snippet": "<div class=\"max-w-[1696px] mx-auto rounded-2xl overflow-hidden bg-[#55394f] dark:bg-[#…\">",
              "selector": "div.secret-landing > main > section.px-4 > div.max-w-[1696px]",
              "nodeLabel": "Trusted by the best in business\n\nRailway supports great software teams wherever…",
              "boundingRect": {
                "top": 7469,
                "left": 16,
                "right": 396,
                "width": 380,
                "bottom": 9987,
                "height": 2518
              }
            }
          }
        ]
      }
    }
  ],
  "headings": [
    {
      "key": "node",
      "label": "Failing Elements",
      "valueType": "node",
      "subItemsHeading": {
        "key": "relatedNode",
        "valueType": "node"
      }
    }
  ],
  "debugData": {
    "tags": [
      "cat.color",
      "wcag2aa",
      "wcag143",
      "TTv5",
      "TT13.c",
      "EN-301-549",
      "EN-9.1.4.3",
      "ACT",
      "RGAAv4",
      "RGAA-3.2.1"
    ],
    "type": "debugdata",
    "impact": "serious"
  }
}

Avoid enormous network payloads

Total size was 3,679 KiB

Large network payloads cost users real money and are highly correlated with long load times. Learn how to reduce payload sizes.

对应元素与资源
{
  "type": "table",
  "items": [
    {
      "url": "https://railway.com/assets/modal-Bzr_UYzv.js",
      "totalBytes": 500823
    },
    {
      "url": "https://railway.com/",
      "totalBytes": 360930
    },
    {
      "url": "https://railway.com/secret-landing/build-and-deploy/maskgroup-forest.webp",
      "totalBytes": 299915
    },
    {
      "url": "https://railway.com/assets/main-D2KTMh0D.js",
      "totalBytes": 199447
    },
    {
      "url": "https://www.googletagmanager.com/gtag/js?id=AW-17509959674",
      "totalBytes": 156031
    },
    {
      "url": "https://railway.com/landing-2/trains/station-floor--light.svg",
      "totalBytes": 150364
    },
    {
      "url": "https://railway.com/assets/EvolveAndCollaborateAnimation-BI5N3ctA.js",
      "totalBytes": 140190
    },
    {
      "url": "https://railway.com/assets/ScaleAndGrowAnimation-DySs9KdL.js",
      "totalBytes": 118201
    },
    {
      "url": "https://railway.com/assets/BuildAndDeployAnimation-Djv3peX4.js",
      "totalBytes": 95406
    },
    {
      "url": "https://railway.com/secret-landing/hero/bg-train-dusk-960.webp",
      "totalBytes": 94246
    }
  ],
  "headings": [
    {
      "key": "url",
      "label": "URL",
      "valueType": "url"
    },
    {
      "key": "totalBytes",
      "label": "Transfer Size",
      "valueType": "bytes"
    }
  ],
  "sortedBy": [
    "totalBytes"
  ]
}

Reduce unused CSS

Est savings of 51 KiB

Reduce unused rules from stylesheets and defer CSS not used for above-the-fold content to decrease bytes consumed by network activity. Learn how to reduce unused CSS.

对应元素与资源
{
  "type": "opportunity",
  "items": [
    {
      "url": "https://railway.com/assets/globals-BaWOyD57.css",
      "totalBytes": 55906,
      "wastedBytes": 51867,
      "wastedPercent": 92.77454172928003
    }
  ],
  "headings": [
    {
      "key": "url",
      "label": "URL",
      "valueType": "url"
    },
    {
      "key": "totalBytes",
      "label": "Transfer Size",
      "valueType": "bytes"
    },
    {
      "key": "wastedBytes",
      "label": "Est Savings",
      "valueType": "bytes"
    }
  ],
  "sortedBy": [
    "wastedBytes"
  ],
  "debugData": {
    "type": "debugdata",
    "metricSavings": {
      "FCP": 0,
      "LCP": 0
    }
  },
  "overallSavingsMs": 0,
  "overallSavingsBytes": 51867
}
测试环境与原始指标
{
  "finalUrl": "https://railway.com/",
  "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/151.0.0.0 Safari/537.36",
  "formFactor": "mobile",
  "throttlingMethod": "simulate",
  "throttling": {
    "rttMs": 150,
    "throughputKbps": 1638.4,
    "requestLatencyMs": 562.5,
    "uploadThroughputKbps": 675,
    "cpuSlowdownMultiplier": 4,
    "downloadThroughputKbps": 1474.5600000000002
  },
  "metrics": [
    {
      "id": "largest-contentful-paint",
      "unit": "millisecond",
      "value": 5376.0655
    },
    {
      "id": "cumulative-layout-shift",
      "unit": "unitless",
      "value": 0.2332928311057108
    },
    {
      "id": "total-blocking-time",
      "unit": "millisecond",
      "value": 3422.5335000000014
    },
    {
      "id": "first-contentful-paint",
      "unit": "millisecond",
      "value": 4784.832
    },
    {
      "id": "speed-index",
      "unit": "millisecond",
      "value": 11845.895371657523
    }
  ]
}

01 / 值得借鉴

好设计,具体好在哪

独特的视觉氛围与衬线排版识别度

主标题采用 IBM Plex Serif 衬线体,搭配深邃的紫黑底色(#13111c)与星空云层插画,营造出在开发者基础设施领域少有的静谧与克制美感。

移动端首屏下方紧凑且高可信度的客户标牌矩阵

在移动端视口中,Tripadvisor、Cognizant、Mercado Libre 和 Automattic 等头部客户 Logo 紧随首屏行动按钮以 2x3 细线网格呈现,在进入细节模块前迅速建立品牌信任。

02 / 下一步

值得继续打磨的地方

  1. 01

    为指标计数器提供可靠的静态基线数据,消除零占位符

    当动态计数器未水合或加载滞后时,页面会直接显示 '0+ deploys per month' 和 'Users 0000000',极易给访问者留下平台无流量或功能损坏的错误印象。

    在服务端渲染的静态 HTML 中植入合理的保底数值(如最近的实际里程碑数字),确保搜索引擎爬虫、未执行脚本的用户以及水合前的首屏都能展现真实的企业级规模。

  2. 02

    将宽泛的 'Learn more →' 替换为具体场景行动文案

    连续 5 个核心功能板块均采用完全相同的 'Learn more →' 锚点文字,既错失了表达具体产品价值的机会,也影响了无障碍阅读体验。

    将各功能板块的链接文案更新为对应内容,如'探索可视化画布 →'、'查看网络架构文档 →'、'了解自动扩缩容 →'。验证每个链接在无障碍树中具有唯一名称。

03 / 设计语言

把气质拆成可复用的参数

色彩

背景

#13111c

文字

#ffffff

强调

#553f83

字体与尺度

标题字体
IBM Plex Serif
正文字体
Inter
标题 / 正文
54px / 16px

间距与形状

区块间距
0px
组件内距
—
卡片圆角
—
按钮圆角
8px

表达也可以更准确

文案润色对照

现在

0+ deploys per month (and counting)

建议表达

Millions of deploys per month (and counting)

避免在动态遥测计数加载中或不可用时直接向用户暴露 0 这种空指标。

04 / 检查依据

观察与实测依据

逐项查看观察、建议与采集记录。

品味1 项观察

三张完全一样的功能卡

中优先级

三张一模一样的卡片横排,是生成器默认的功能区块。它在说话的是布局,不是立场。

拆掉这三列。改成两列、列表,或只突出一项。不要把同一张卡复制三次。

grid-cols-3 with repeating cards
转化4 项观察

图片没有 alt

中优先级

没有 alt,读屏到这里就断了,搜索也会减分。装饰图可以 alt="",内容图不行。

产品和照片写短 alt。纯装饰才用空 alt。

29 images without alt

标签标题和 H1 对不上

标签、分享卡、首屏各说各的,访客就记不住这是同一个产品。

让 title、og:title 和 H1 共用同一个名词。

title="Railway | The all-in-one intelligent cloud provider" h1="Ship software peacefully"

遥测计数器在 DOM 中暴露未水合的全零字符

高优先级

原始 DOM 中包含类似 'Users 0000000, Services 000000000' 的占位字符,在网络较慢或脚本阻塞时会直接暴露给用户,削弱开发者对平台技术实力的信任。

在 HTML 模板中预先渲染缓存的聚合统计数据,随后在此基础上水合更新,而不是将数字默认值设为 0。

Users 0000000, Services 000000000, Deployments 000000000, Requests 00000000000000, Logs 00000000000000

重复的通用锚点链接文字降低点击意图

中优先级

5 个各具特色的架构功能板块全部使用相同的 'Learn more →',在移动端长滚动过程中无法激发针对特定功能的点击欲望。

为每个功能板块分配专属的行动文案,并通过无障碍审查确保链接文本指向清晰独立。

Learn more → -> /features#build-and-deploy
上线4 项观察

没有 HSTS 响应头

中优先级

没有 Strict-Transport-Security,第一次访问仍可能被降到 http。浏览器不会钉死 HTTPS。

在边缘设置 Strict-Transport-Security: max-age=31536000; includeSubDomains。

strict-transport-security missing

HTML 体积过大

中优先级

首包超过 350 KB,多半是内联垃圾:整份 CSS、JSON,或整个应用。手机还没看到标题就已经在付钱。

把 CSS 和数据移出文档。首包 HTML 控制在 200 KB 以内。

352 KB HTML

没有 X-Content-Type-Options

没有 nosniff,浏览器可能按错误类型解释文件。这是一行响应头。

设置 X-Content-Type-Options: nosniff。

x-content-type-options missing

没有 Referrer-Policy

默认 referrer 可能把站内路径和查询串漏给第三方。

设置 Referrer-Policy: strict-origin-when-cross-origin。

referrer-policy missing
链接分享预览

05 / 开始动手

把下一步,交给你的 AI

优化指令用于调整这个页面;设计指令用于借鉴它的视觉语言。「做同款」会附带截图与实施步骤。复制后粘贴到你的代码助手中。

查看完整指令
修复 Railway 落地页上的遥测计数器水合问题及重复的功能锚点文案。在用量统计模块中,将初始回退的纯零字符('0+ deploys per month'、'Users 0000000')替换为合理的服务端预渲染基线数字或里程碑缓存值,确保水合前页面依然具备可信度。随后检查指向 /features#* 锚点的 5 个功能卡片,将通用的 'Learn more →' 改为对应具体业务场景的描述性文案(如可视化画布、零配置网络、横向扩缩容、统一监控日志与 PR 预览环境)。保持 #13111c 深色背景、IBM Plex Serif 标题字体、8px 按钮圆角及既有色彩体系不变。