www.carnival.com speed test — 20 Oct 2026

Measured from the wfix.shop server on 20 October 2026 at 13:57 UTC. Grade C (74/100), with the screenshots, the timings and the fixes that matter.

https://www.carnival.com/

20 October 2026 at 13:57 UTC · Free test · report pt_0c6f806b2c0a
Grade
C
74/100
Performance83/100
Structure61/100

9 audit(s) passed, 7 need work

First byte (TTFB)406 msmeasured from this server
Fully loaded1.45 sfirst byte + slowest asset
Requests26document + assets
Page weight2.32 MBcompressed transfer
HTML document10.0 KBgzip
ProtocolHTTP/3nginx/1.29.7
Third-party458.7 KBother hosts

Where the first byte went

  • DNS lookup 53 ms 13%
  • TCP connect 68 ms 17%
  • Server wait 286 ms 70%

Measured on the connection that fetched the HTML. Every other request on the page waits for the end of this bar before it can start.

How this page compares

First bytefaster than 55% of 4,999 pages tested here406 ms against a median of 449 ms
Page weightheavier than 85% of 4,999 pages tested here2.32 MB against a median of 650.3 KB
Fully loadedfaster than 73% of 4,999 pages tested here1.45 s against a median of 1.84 s
Requestssends more requests than 100% of 4,999 pages tested here26 against a median of 26

Every report published here is in this comparison, so it is a reference population of pages tested from one server - not a benchmark of the whole web.

What these numbers mean

  • The first byte arrived in 406 ms. That is workable, and the cheapest win left is caching or a warmer connection.
  • The page transfers 2.32 MB over 26 request(s). Javascript files are 69% of it, so defer what is not needed for the first screen, and drop tags nobody uses.
  • The HTML itself arrives gzip-compressed.
  • It runs over HTTP/3, so the assets share a connection instead of opening one each.

Fix first: Server response time (TTFB) - Cut server think time: page cache, query indexes, fewer synchronous calls to third parties inside the request. Connection setup is distance, so a nearer region or a CDN edge helps instead.

Read on one shared server, not a visitor's phone: use it to compare pages against each other, not as a promise about every connection. We fix what these tests find.

No screenshot for this report.

The headless browser did not capture this page when the test ran, so only the server measurements are shown.

Page weight by type

What the page is made of

Javascript 18 requests
1.60 MB 69%
Images 5 requests
724.5 KB 30%
Html 1 request
474 B 0%
Css 1 request
251 B 0%

Transfer size, compressed as sent. 26 request(s) in total, 2.32 MB across all of them.

Top issues

Server response time (TTFB)

high impact

The first byte arrived after 406 ms. Of that, 286 ms was the server thinking and 121 ms was connection setup. A first byte under 400 ms is what a visitor feels as instant.

Fix: Cut server think time: page cache, query indexes, fewer synchronous calls to third parties inside the request. Connection setup is distance, so a nearer region or a CDN edge helps instead.

Image delivery and format

high impact

1 image(s) over 200 KB and 1 large image(s) still served as JPEG or PNG.

Fix: Serve WebP or AVIF with a JPEG fallback, size images to the space they occupy, and lazy-load anything below the fold. Images are usually more than half of a slow page.

Render-blocking resources

high impact

12 render-blocking resource(s) in the document head (4 script(s), 8 stylesheet(s)). The page cannot paint until each one arrives.

Fix: Add defer or async to scripts that do not change the first paint, inline the critical CSS, and load the rest with media="print" plus an onload swap.

Total page weight

high impact

The page transfers 2.32 MB across 26 request(s), with the document itself at 10.0 KB.

Fix: Work through the heaviest assets first: images, then fonts, then third-party scripts.

Third-party weight

medium impact

2 third-party host(s) serve 458.7 KB of this page. Each one is another DNS lookup, TLS handshake and point of failure you do not control.

Fix: Self-host the libraries you can, drop the tags you cannot justify, and preconnect the ones you keep.

Waterfall

Slowest requests

JAVASCRIPTwww.carnival.com/bundles/desktop/library
1.05 s
IMAGESwww.carnival.com/-/media/Images/hp-merch/2017/desktop/t…
1.00 s
JAVASCRIPTwww.carnival.com/bundles/desktop/infrastructure/upgrade
971 ms
IMAGESwww.carnival.com/-/media/Images/hp-merch/2019/desktop/t…
935 ms
HTMLwww.carnival.com/Ol6xnN/f_ndpy/i2/Mxjk/7JvI-Y/ruYirJ6fE…
929 ms
JAVASCRIPTwww.carnival.com/static-assets/ccl-utilities/dist/ccl-u…
928 ms
JAVASCRIPTwww.carnival.com/ruxitagentjs_ICA15789NPRTUVXfhqrux_103…
925 ms
CSSfonts.googleapis.com/css
922 ms
JAVASCRIPTwww.carnival.com/common/global/tracking/carnival.tracki…
921 ms
JAVASCRIPTwww.carnival.com/bundles/homepage
913 ms

Each bar is one request's own response time, scaled to the slowest. Assets were fetched in parallel, so the bars overlap in real time rather than stacking. first party third party

RequestTypeStatusTimeSize
https://www.carnival.com/bundles/desktop/library?v=0erxI7JvPVCF0dqQPlYo1vKzPQB44ko44TWaL_zT-Ww1javascript2001.05 s7.7 KB
https://www.carnival.com/-/media/Images/hp-merch/2017/desktop/touts/121417-t3-fs.pngimages2001.00 s5.4 KB
https://www.carnival.com/bundles/desktop/infrastructure/upgrade?v=0JDUneSLc3wtwCzn8u6cjge7ajjaEFRyFhePHSrOgF01javascript200971 ms87.4 KB
https://www.carnival.com/-/media/Images/hp-merch/2019/desktop/touts/australia-tout.pngimages200935 ms1.1 KB
https://www.carnival.com/Ol6xnN/f_ndpy/i2/Mxjk/7JvI-Y/ruYirJ6fEmQpJL/XGQeKQE/DU1IXTkf/FUshtml403929 ms474 B
https://www.carnival.com/static-assets/ccl-utilities/dist/ccl-utilities.iife.js?v=2026.10.12.2javascript200928 ms4.6 KB
https://www.carnival.com/ruxitagentjs_ICA15789NPRTUVXfhqrux_10347260902154543.jsjavascript200925 ms142.7 KB
https://fonts.googleapis.com/css?family=Open+Sans:400,600,700,800 3rd partycss200922 ms251 B
https://www.carnival.com/common/global/tracking/carnival.tracking.jsjavascript200921 ms1.5 KB
https://www.carnival.com/bundles/homepage?v=Fpxk8Wsi_cZ19qWHhbwbgEovPjDIMz6mKg6rLEWkB-w1javascript200913 ms20.1 KB
https://www.carnival.com/Carnival.AppResources.Core.en.axd?ver=091113.1javascript200909 ms1.8 KB
https://www.carnival.com/-/media/Images/hp-merch/2026/extras/paradise-collection2.pngimages200907 ms710.3 KB
https://www.carnival.com/static-assets/ccl-global-shopping/dist/index.min.js?v=2026.10.12.2javascript200907 ms6.9 KB
https://www.carnival.com/DynamicAssets/personalizer.js?v=2026.10.12.2javascript200906 ms4.2 KB
https://www.carnival.com/static-assets/cclr-header-2024/dist/standalone/cclr-header-standalone.js?v=2026.10.12.2javascript200890 ms564.2 KB
https://www.carnival.com/apple-touch-icon.pngimages200884 ms6.1 KB
https://www.carnival.com/Carnival.ComponentResources.axd?componentNames=CruiseSearch%2CShared&lang=en&app=Core&propName=CruiseSearchWidgetResjavascript200883 ms7.2 KB
https://www.carnival.com/Assets/Scripts/ToastWidget/toast.js?v=2026.10.12.2javascript200882 ms1.6 KB
https://www.carnival.com/static-assets/cclr-footer/dist/standalone/cclr-footer-standalone.js?v=2026.10.12.2javascript200875 ms176.0 KB
https://www.carnival.com/common/global/tracking/carnival.tracking.coreweb.jsjavascript200873 ms1.8 KB
https://www.carnival.com/-/media/Images/hp-merch/2018/desktop/touts/icon-calendar-tout.svgimages200873 ms1.5 KB
https://cdn.optimizely.com/js/1912722625.js 3rd partyjavascript200871 ms458.5 KB
https://www.carnival.com/static-assets/ccl-urgency/dist/urgency.min.js?v=2026.10.12.2javascript200859 ms2.9 KB
https://www.carnival.com/static-assets/ccl-cruise-search/dist/widget.min.js?v=2026.10.12.2javascript200853 ms102.5 KB
https://www.carnival.com/static-assets/ccl-cruise-search/dist/vendor.min.js?v=2026.10.12.2javascript200849 ms50.5 KB
Report this page

The page is removed when the owner agrees. Sending this removes nothing by itself.

Run this test on your own site

The same engine, free, with the screenshots and the fixes. No account needed.