# Historical decline in WWW subdomain use?

**URL:** <https://discuss.httparchive.org/t/historical-decline-in-www-subdomain-use/2507>\
**Category:** Analysis\
**Created:** [January 10, 2023, 3:27am UTC](https://discuss.httparchive.org/t/historical-decline-in-www-subdomain-use/2507 "2023-01-10T03:27:24Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![gwern](https://yyz1.discourse-cdn.com/flex035/user_avatar/discuss.httparchive.org/gwern/32/2104_2.png) [@gwern](https://discuss.httparchive.org/u/gwern)\
**Post date:** [January 10, 2023, 3:27am UTC](https://discuss.httparchive.org/t/historical-decline-in-www-subdomain-use/2507/1 "2023-01-10T03:27:24Z")

</div>

It’s commonly said that the classic ‘www.’ subdomain is in steep decline, prompted by general lack of need and catering to mobile users. I agree that it _does_ seem like you see more ‘[foo.com](http://foo.com)’ rather than ‘[www.foo.com](http://www.foo.com)’ each year. Can the HTTP Archive quantify this, perhaps by looking at the top 1 million domains by year and seeing what fraction either lacks a ‘www.’ subdomain or it redirects?

---

<div class="post-metadata">

**Author:** ![imkevdev](https://yyz1.discourse-cdn.com/flex035/user_avatar/discuss.httparchive.org/imkevdev/32/1941_2.png) [@imkevdev](https://discuss.httparchive.org/u/imkevdev)\
**Post date:** [February 5, 2023, 10:37pm UTC](https://discuss.httparchive.org/t/historical-decline-in-www-subdomain-use/2507/2 "2023-02-05T22:37:41Z")

</div>

Hi @gwern.

At the end of 2018, the HTTP Archive [changed the source of the URLs from Alexa to CrUX](https://discuss.httparchive.org/t/changes-to-the-http-archive-corpus/1539). Alexa URLs (before Dec 2018) include the `www` by default (`www.example.com`), while the CrUX URLs do not (`example.com` and `www.example.com` are both valid origins). Since the initial URL has changed, we don’t have a reliable comparison before 2018. Some websites would redirect from `www.example.com` to `example.com`, while others would serve the same content on both domains or redirect to another subdomain altogether (`en.example.com` or `m.example.com`).

Looking at the data from Dec 2018 onwards:

| client | year | total | www | pct |
| --- | --- | --- | --- | --- |
| desktop | 2022\* | 1,246,032 | 511,012 | 41.01% |
| desktop | 2021 | 5,824,858 | 2,508,805 | 43.07% |
| desktop | 2020 | 6,018,707 | 2,716,807 | 45.14% |
| desktop | 2019 | 4,291,086 | 2,086,970 | 48.64% |
| desktop | 2018 | 3,840,067 | 1,815,773 | 47.28% |
| mobile | 2022\* | 1,613,142 | 651,794 | 40.41% |
| mobile | 2021 | 7,957,652 | 3,350,268 | 42.10% |
| mobile | 2020 | 7,157,942 | 3,203,779 | 44.76% |
| mobile | 2019 | 5,181,871 | 2,490,108 | 48.05% |
| mobile | 2018 | 1,247,333 | 286,662 | 22.98% |

_\* 2022 is sampled at 10% of corpus_

Hope that helps.

* * *

**Query:**

```sql
#standardSQL
# Count of domains which use 'www' subdomain

WITH data_2022 AS (
  SELECT
    _TABLE_SUFFIX AS client,
    "2022" AS year,
    COUNT(DISTINCT url) AS total,
    COUNT(DISTINCT IF(REGEXP_CONTAINS(url, r"^https?://www\."), url, NULL)) AS www
  FROM
    `httparchive.pages.2022_12_01_*` TABLESAMPLE SYSTEM(10 PERCENT)
  GROUP BY
    client
),

data_2021 AS (
  SELECT
    _TABLE_SUFFIX AS client,
    "2021" AS year,
    COUNT(DISTINCT url) AS total,
    COUNT(DISTINCT IF(REGEXP_CONTAINS(url, r"^https?://www\."), url, NULL)) AS www
  FROM
    `httparchive.pages.2021_12_01_*` TABLESAMPLE SYSTEM(100 PERCENT)
  GROUP BY
    client
),

data_2020 AS (
  SELECT
    _TABLE_SUFFIX AS client,
    "2020" AS year,
    COUNT(DISTINCT url) AS total,
    COUNT(DISTINCT IF(REGEXP_CONTAINS(url, r"^https?://www\."), url, NULL)) AS www
  FROM
    `httparchive.pages.2020_12_01_*` TABLESAMPLE SYSTEM(100 PERCENT)
  GROUP BY
    client
),

data_2019 AS (
  SELECT
    _TABLE_SUFFIX AS client,
    "2019" AS year,
    COUNT(DISTINCT url) AS total,
    COUNT(DISTINCT IF(REGEXP_CONTAINS(url, r"^https?://www\."), url, NULL)) AS www
  FROM
    `httparchive.pages.2019_12_01_*` TABLESAMPLE SYSTEM(100 PERCENT)
  GROUP BY
    client
),

data_2018 AS (
  SELECT
    _TABLE_SUFFIX AS client,
    "2018" AS year,
    COUNT(DISTINCT url) AS total,
    COUNT(DISTINCT IF(REGEXP_CONTAINS(url, r"^https?://www\."), url, NULL)) AS www
  FROM
    `httparchive.pages.2018_12_15_*` TABLESAMPLE SYSTEM(100 PERCENT)
  GROUP BY
    client
),

combined_data AS (
  SELECT
  client,
  year,
  www,
  total,
  ROUND(100 * www / total, 2) AS pct
  FROM
    data_2022
  UNION ALL
  SELECT
    client,
    year,
    www,
    total,
    ROUND(100 * www / total, 2) AS pct
  FROM
    data_2021
  UNION ALL
  SELECT
    client,
    year,
    www,
    total,
    ROUND(100 * www / total, 2) AS pct
  FROM
    data_2020
  UNION ALL
  SELECT
    client,
    year,
    www,
    total,
    ROUND(100 * www / total, 2) AS pct
  FROM
    data_2019
  UNION ALL
  SELECT
    client,
    year,
    www,
    total,
    ROUND(100 * www / total, 2) AS pct
  FROM
    data_2018
)

SELECT
  client,
  year,
  total,
  www,
  pct
FROM
  combined_data
ORDER BY
  client,
  year DESC

```

---

<div class="post-metadata">

**Author:** ![gwern](https://yyz1.discourse-cdn.com/flex035/user_avatar/discuss.httparchive.org/gwern/32/2104_2.png) [@gwern](https://discuss.httparchive.org/u/gwern)\
**Post date:** [February 5, 2023, 11:15pm UTC](https://discuss.httparchive.org/t/historical-decline-in-www-subdomain-use/2507/3 "2023-02-05T23:15:39Z")

</div>

Oh, I didn’t know that about the data transition. Thanks for highlighting that - that could have been very misleading (although probably one would notice that `www` went off a cliff in December 2018 for no apparent reason).

Your 2018-\>2022 numbers seem clear, however: `www` _is_ going out of fashion, at a remarkable rate of 2% a year - at least for ‘desktop’ (47% → 41%).

Do you know what’s going on with your ‘mobile’ numbers there? Did Alexa cover mobile badly while CrUX had much better coverage? Obviously ‘mobile’ browsers didn’t really jump from 23% to 48% and then immediately reverse to start declining 48%-\>41%. I read this as the 23% being bogus, and the real number presumably more like 49-50%, and then declining ~2%/year like ‘desktop’.

---

<div class="post-metadata">

**Author:** ![imkevdev](https://yyz1.discourse-cdn.com/flex035/user_avatar/discuss.httparchive.org/imkevdev/32/1941_2.png) [@imkevdev](https://discuss.httparchive.org/u/imkevdev)\
**Post date:** [February 6, 2023, 8:54am UTC](https://discuss.httparchive.org/t/historical-decline-in-www-subdomain-use/2507/4 "2023-02-06T08:54:19Z")

</div>

The 2018 data is from the mid-December run, so it should already be from CrUX. Looking at a random sample of URLs they seems correct, however in January 2019 (~ 15 days later) the data is already drastically different, so I suspect the December mobile data for Dec 2018 (both runs) is somehow incorrect.

| client | year | www | total | pct |
| --- | --- | --- | --- | --- |
| mobile | Jan 2019 | 1905679 | 4023592 | 47.36 |
| desktop | Jan 2019 | 1813069 | 3831026 | 47.33 |

* * *

**Query:**

```sql
WITH data_jan_2019 AS (
  SELECT
    _TABLE_SUFFIX AS client,
    'Jan 2019' AS year,
    COUNT(DISTINCT url) AS total,
    COUNT(DISTINCT IF(REGEXP_CONTAINS(url, r"^https?://www\."), url, NULL)) AS www
  FROM
    `httparchive.pages.2019_01_01_*` TABLESAMPLE SYSTEM(100 PERCENT)
  GROUP BY
    client
)

SELECT
  client,
  year,
  www,
  total,
  ROUND(100 * www / total, 2) AS pct
FROM
  data_jan_2019

```

---

<div class="post-metadata">

**Author:** ![rviscomi](https://yyz1.discourse-cdn.com/flex035/user_avatar/discuss.httparchive.org/rviscomi/32/835_2.png) [@rviscomi](https://discuss.httparchive.org/u/rviscomi)\
**Post date:** [February 6, 2023, 3:36pm UTC](https://discuss.httparchive.org/t/historical-decline-in-www-subdomain-use/2507/5 "2023-02-06T15:36:58Z")

</div>

Note that the desktop dataset increased in size on Dec 15, 2018 while the mobile dataset lagged behind until Jan 1, 2019.

 ![image](https://canada1.discourse-cdn.com/flex035/uploads/httparchive/original/2X/e/ef46305cc5e641bfbd7deffb0c403a327aa066c0.png)

> **[HTTP Archive: State of the Web](https://httparchive.org/reports/state-of-the-web#numUrls)**
>
> This report captures a long view of the web, including the adoption of techniques for efficient network utilization and usage of web standards like HTTPS.

---

<div class="post-metadata">

**Author:** ![marry](https://avatars.discourse-cdn.com/v4/letter/m/f1d935/32.png) [@marry](https://discuss.httparchive.org/u/marry)\
**Post date:** [February 9, 2023, 5:32pm UTC](https://discuss.httparchive.org/t/historical-decline-in-www-subdomain-use/2507/6 "2023-02-09T17:32:02Z")

</div>

wait rick what does this all mean

---

<div class="post-metadata">

**Author:** ![rviscomi](https://yyz1.discourse-cdn.com/flex035/user_avatar/discuss.httparchive.org/rviscomi/32/835_2.png) [@rviscomi](https://discuss.httparchive.org/u/rviscomi)\
**Post date:** [February 9, 2023, 8:20pm UTC](https://discuss.httparchive.org/t/historical-decline-in-www-subdomain-use/2507/7 "2023-02-09T20:20:38Z")

</div>

@marry to clarify, the [post](https://discuss.httparchive.org/t/changes-to-the-http-archive-corpus/1539) that @imkevdev linked to earlier describes the dataset changes at the end of 2018:

> 1. As of **2018\_07\_01** we started using URLs from the Chrome UX Report (CrUX). We switched mobile URLs to CrUX on 07\_15. This increased our coverage from 500K URLs to ~1.3M.
> 2. As of **2018\_12\_01** we have decreased the number of test runs per URL from 3 to 1. The loss of redundancy may affect the reliability of time-based performance metrics but these are not especially useful in synthetic tests. For accurate real-world performance data join with the CrUX dataset. This change reduces the time for the crawl to complete, allowing us to add more URLs.
> 3. As of **2018\_12\_15** we have increased the desktop URLs to all CrUX URLs for desktop (3.9M).
> 4. As of **2019\_01\_01** we are reducing the crawl frequency from semi-monthly to monthly. Combined with the reduced runs per URL, this change will enable us to afford testing the full CrUX corpus for both desktop and mobile. As of this crawl we will increase the mobile URLs to all CrUX URLs for mobile (4.2M).

So the rollout to use all CrUX URLs was applied to desktop on 2018\_12\_15 and mobile on 2019\_01\_01.
