{"course":{"slug":"hugging-face","title":"Hugging Face, End to End","url":"https://addaly.com/learn/hugging-face","level":"intermediate","track":"create"},"lesson":{"slug":"counters-and-trending","title":"What a download count is counting","url":"https://addaly.com/learn/hugging-face/counters-and-trending","position":9,"of":75,"minutes":8,"answer":"Downloads are a thirty-day count of file fetches dominated by CI, library defaults and ephemeral containers, so they are a floor on how well-exercised a model is and not a ranking, while fine-tune.","keyIdea":"Downloads are a thirty-day count of file fetches dominated by CI, library defaults and ephemeral containers, so they are a floor on how well-exercised a model is and not a ranking, while fine-tune, adapter and Space counts cost real effort and carry more information."},"body":{"format":"markdown","text":"## Four million downloads, and what that means\n\nThe number under a model name is a thirty-day rolling count of file resolutions: requests that actually fetched a weights file, deduplicated in the way the Hub deduplicates them. It is not four million people. It is not even four million distinct machines.\n\nThe things that inflate it, roughly in order of how much they inflate it:\n\n- **Continuous integration.** A library with a test suite that loads a model on every commit, across a matrix of Python versions, generates thousands of downloads a week from one project.\n- **Default models.** A model that a popular library loads when you do not specify one collects the downloads of everyone who did not make a choice. `sentence-transformers/all-MiniLM-L6-v2` is enormously downloaded partly because it is the sensible default in dozens of tutorials and several libraries.\n- **Ephemeral compute.** Every Colab session, every container that starts with a cold cache, every Space that restarts, downloads again. A single busy Space can produce more downloads than a hundred human users.\n- **Age.** A three-year-old model has had three years of all the above, though the thirty-day window blunts this more than people expect.\n\nAnd the things that deflate it: a shared cache on a cluster registers one download for a lab of fifty; a popular model served behind an API shows one download and a million uses.\n\n> Figure: Where a busy model's thirty-day downloads come from. Bars (% of one model's thirty-day downloads): Continuous integration and test suites 34; Ephemeral containers starting with a cold cache 27; Loaded as some library's default model 21; People who chose it deliberately 12; First-time downloads by a new project 6. Illustrative proportions; the Hub does not publish the breakdown. The shape is the point: most of the number is machines, not people, which is why downloads are a floor on how well exercised a model is and never a ranking.\n\n## Why this matters for a decision\n\nThe download count is a **floor on exercise**, and that is useful. A model with two million downloads has been loaded by enough different code paths that the obvious breakages (a missing tokenizer file, a config that no released transformers version can parse, weights that do not match the architecture) have been found and reported. You are unlikely to be the first person to discover it does not load.\n\nIt is not a ranking, because it does not measure quality, recency or fit. Three failure modes follow directly:\n\n1. **The superseded champion.** A model tops its task by downloads while a successor two versions newer sits at a tenth of the count. Downloads lag adoption by months.\n2. **The wrong-job winner.** The most downloaded model for `text-classification` is not the most downloaded model for *your* text, your language, or your length of input.\n3. **The dependency artefact.** A tiny model used internally by another library outranks every model a human ever chose on purpose.\n\n## Likes, and what they are better at\n\nA like is one click by one signed-in account, and unlike downloads it cannot be produced by a test suite. It is a weaker signal in volume and a cleaner one in kind: it means a person looked at the repository and thought it was worth marking.\n\nLikes skew hard toward the announcement moment, so they measure attention rather than sustained use, and they accumulate on organisations people already trust. A model with 3,000 likes and 400 downloads is famous. A model with 40 likes and 900,000 downloads is load-bearing. Those are different things and you often want the second.\n\n## Trending\n\nThe trending sort is a recency-weighted blend of activity: downloads, likes and discussion inside a short window. Its purpose is news. Sorting a task by trending tells you what shipped this week; it is the right view once a month and the wrong view when choosing a dependency, because by construction it penalises anything stable.\n\n## The counters that are worth more than all of these\n\nOn the right-hand side of a model page, under the metadata, sit the numbers almost nobody reads:\n\n- **Finetunes / Adapters / Quantizations.** If four hundred people have fine-tuned a model, four hundred people got far enough to train on it. This is the closest thing on the Hub to a quality signal, because it costs real effort rather than a click.\n- **Spaces using this model.** A Space is a running application. If thirty Spaces load a model, it works in thirty configurations you did not have to test.\n- **Last modified.** A model last touched in 2022 is not automatically bad (`bert-base-uncased` is still correct), but for a fast-moving family it tells you the maintainer has moved on.\n- **Open discussions.** Two unanswered bug threads from eight months ago say more about the support you will receive than any counter.\n\n## The summary\n\nUse downloads to eliminate, not to choose. A model with four downloads and no discussions is a coin flip; you may be its first real user, and that is a reasonable choice if its card is good and you have thirty test examples of your own. A model with four million downloads has cleared the loading bar and nothing else.\n\nThe decision between the two finalists never comes from the Hub's numbers. It comes from running both on your own examples, which is what the evaluation module builds.\n\n## Do this now\n\nOpen the most-downloaded model for any task and find its Spaces count and its last-modified date. Then open the fifth result and do the same. In about half of the tasks on the Hub, the fifth is newer, better documented, and the one you should use."},"check":{"question":"Two speech models sit side by side: A has 2.1 million downloads, 12 likes, 3 Spaces and was last updated two years ago. B has 40,000 downloads, 900 likes, 260 Spaces and 180 fine-tunes. What does this pattern most likely indicate?","options":[{"text":"A is the stronger model, since sustained download volume is the only counter that cannot be inflated by a burst of attention.","correct":false,"tempting":"Inverts the inflation problem: downloads are the counter most easily produced by automation, while Spaces and fine-tunes require effort."},{"text":"B is newer and has not yet been exercised enough to trust, so A remains the safer production choice.","correct":false,"tempting":"Treats download volume as a proxy for reliability when 260 running Spaces already demonstrate B loads in many configurations."},{"text":"A is probably pulled by CI or as a library default, while B is being chosen and built on by people.","correct":true},{"text":"The two counters measure different tasks, so the comparison is meaningless and only a leaderboard score can separate them.","correct":false,"tempting":"Declines a reading the evidence supports, and defers to leaderboards that measure neither adoption nor fit."}]},"prev":{"slug":"the-hub-api","title":"Ask the Hub questions instead of browsing it","url":"https://addaly.com/learn/hugging-face/the-hub-api"},"next":{"slug":"your-first-pipeline","title":"One line that hides five steps","url":"https://addaly.com/learn/hugging-face/your-first-pipeline"},"authorship":"Founder and series editor: Dr Mustafa Mun. Written by AI models to a written standard. Exam keys checked blind by a second model: 3,665 of 3,666 agreed. Academic review invited.","review":{"status":"Draft, open for academic review"},"cite":"Addaly (2026) 'What a download count is counting', in Hugging Face, End to End. Edited by M. Mun. Addaly. Available at: https://addaly.com/learn/hugging-face/counters-and-trending (Accessed: 13 October 2026).","licence":{"name":"CC BY-NC-SA 4.0","url":"https://creativecommons.org/licenses/by-nc-sa/4.0/"},"reader":{"schema":1,"title":"What a download count is counting","courseTitle":"Hugging Face, End to End","module":{"index":1,"slug":"the-hub-as-a-repository-host","title":"The Hub, read properly"},"answer":null,"keyIdea":"Downloads are a thirty-day count of file fetches dominated by CI, library defaults and ephemeral containers, so they are a floor on how well-exercised a model is and not a ranking, while fine-tune, adapter and Space counts cost real effort and carry more information.","hero":{"kind":"figure","figure":{"t":"figure","label":"Figure","figure":{"type":"bars","unit":"% of one model’s thirty-day downloads","title":"Where a busy model’s thirty-day downloads come from","series":[{"label":"Continuous integration and test suites","value":34},{"label":"Ephemeral containers starting with a cold cache","value":27},{"label":"Loaded as some library’s default model","value":21},{"label":"People who chose it deliberately","value":12,"highlight":true},{"label":"First-time downloads by a new project","value":6}],"caption":"Illustrative proportions; the Hub does not publish the breakdown. The shape is the point: most of the number is machines, not people, which is why downloads are a floor on how well exercised a model is and never a ranking."},"alt":"Figure: Where a busy model’s thirty-day downloads come from. Bars (% of one model’s thirty-day downloads): Continuous integration and test suites 34; Ephemeral containers starting with a cold cache 27; Loaded as some library’s default model 21; People who chose it deliberately 12; First-time downloads by a new project 6. Illustrative proportions; the Hub does not publish the breakdown. The shape is the point: most of the number is machines, not people, which is why downloads are a floor on how well exercised a model is and never a ranking."}},"blocks":[{"t":"h2","id":"four-million-downloads-and-what-that-means","runs":[{"text":"Four million downloads, and what that means"}]},{"t":"p","runs":[{"text":"The number under a model name is a thirty-day rolling count of file resolutions: requests that actually fetched a weights file, deduplicated in the way the Hub deduplicates them. It is not four million people. It is not even four million distinct machines."}]},{"t":"p","runs":[{"text":"The things that inflate it, roughly in order of how much they inflate it:"}]},{"t":"ul","items":[[{"text":"Continuous integration.","b":true},{"text":" A library with a test suite that loads a model on every commit, across a matrix of Python versions, generates thousands of downloads a week from one project."}],[{"text":"Default models.","b":true},{"text":" A model that a popular library loads when you do not specify one collects the downloads of everyone who did not make a choice. "},{"text":"sentence-transformers/all-MiniLM-L6-v2","code":true},{"text":" is enormously downloaded partly because it is the sensible default in dozens of tutorials and several libraries."}],[{"text":"Ephemeral compute.","b":true},{"text":" Every Colab session, every container that starts with a cold cache, every Space that restarts, downloads again. A single busy Space can produce more downloads than a hundred human users."}],[{"text":"Age.","b":true},{"text":" A three-year-old model has had three years of all the above, though the thirty-day window blunts this more than people expect."}]]},{"t":"p","runs":[{"text":"And the things that deflate it: a shared cache on a cluster registers one download for a lab of fifty; a popular model served behind an API shows one download and a million uses."}]},{"t":"h2","id":"why-this-matters-for-a-decision","runs":[{"text":"Why this matters for a decision"}]},{"t":"p","runs":[{"text":"The download count is a "},{"text":"floor on exercise","b":true},{"text":", and that is useful. A model with two million downloads has been loaded by enough different code paths that the obvious breakages (a missing tokenizer file, a config that no released transformers version can parse, weights that do not match the architecture) have been found and reported. You are unlikely to be the first person to discover it does not load."}]},{"t":"p","runs":[{"text":"It is not a ranking, because it does not measure quality, recency or fit. Three failure modes follow directly:"}]},{"t":"ol","start":1,"items":[[{"text":"The superseded champion.","b":true},{"text":" A model tops its task by downloads while a successor two versions newer sits at a tenth of the count. Downloads lag adoption by months."}],[{"text":"The wrong-job winner.","b":true},{"text":" The most downloaded model for "},{"text":"text-classification","code":true},{"text":" is not the most downloaded model for "},{"text":"your","i":true},{"text":" text, your language, or your length of input."}],[{"text":"The dependency artefact.","b":true},{"text":" A tiny model used internally by another library outranks every model a human ever chose on purpose."}]]},{"t":"h2","id":"likes-and-what-they-are-better-at","runs":[{"text":"Likes, and what they are better at"}]},{"t":"p","runs":[{"text":"A like is one click by one signed-in account, and unlike downloads it cannot be produced by a test suite. It is a weaker signal in volume and a cleaner one in kind: it means a person looked at the repository and thought it was worth marking."}]},{"t":"p","runs":[{"text":"Likes skew hard toward the announcement moment, so they measure attention rather than sustained use, and they accumulate on organisations people already trust. A model with 3,000 likes and 400 downloads is famous. A model with 40 likes and 900,000 downloads is load-bearing. Those are different things and you often want the second."}]},{"t":"h2","id":"trending","runs":[{"text":"Trending"}]},{"t":"p","runs":[{"text":"The trending sort is a recency-weighted blend of activity: downloads, likes and discussion inside a short window. Its purpose is news. Sorting a task by trending tells you what shipped this week; it is the right view once a month and the wrong view when choosing a dependency, because by construction it penalises anything stable."}]},{"t":"h2","id":"the-counters-that-are-worth-more-than-all-of-these","runs":[{"text":"The counters that are worth more than all of these"}]},{"t":"p","runs":[{"text":"On the right-hand side of a model page, under the metadata, sit the numbers almost nobody reads:"}]},{"t":"ul","items":[[{"text":"Finetunes / Adapters / Quantizations.","b":true},{"text":" If four hundred people have fine-tuned a model, four hundred people got far enough to train on it. This is the closest thing on the Hub to a quality signal, because it costs real effort rather than a click."}],[{"text":"Spaces using this model.","b":true},{"text":" A Space is a running application. If thirty Spaces load a model, it works in thirty configurations you did not have to test."}],[{"text":"Last modified.","b":true},{"text":" A model last touched in 2022 is not automatically bad ("},{"text":"bert-base-uncased","code":true},{"text":" is still correct), but for a fast-moving family it tells you the maintainer has moved on."}],[{"text":"Open discussions.","b":true},{"text":" Two unanswered bug threads from eight months ago say more about the support you will receive than any counter."}]]},{"t":"h2","id":"the-summary","runs":[{"text":"The summary"}]},{"t":"p","runs":[{"text":"Use downloads to eliminate, not to choose. A model with four downloads and no discussions is a coin flip; you may be its first real user, and that is a reasonable choice if its card is good and you have thirty test examples of your own. A model with four million downloads has cleared the loading bar and nothing else."}]},{"t":"p","runs":[{"text":"The decision between the two finalists never comes from the Hub’s numbers. It comes from running both on your own examples, which is what the evaluation module builds."}]},{"t":"h2","id":"do-this-now","runs":[{"text":"Do this now"}],"role":"try"},{"t":"p","runs":[{"text":"Open the most-downloaded model for any task and find its Spaces count and its last-modified date. Then open the fifth result and do the same. In about half of the tasks on the Hub, the fifth is newer, better documented, and the one you should use."}]}],"check":{"question":[{"text":"Two speech models sit side by side: A has 2.1 million downloads, 12 likes, 3 Spaces and was last updated two years ago. B has 40,000 downloads, 900 likes, 260 Spaces and 180 fine-tunes. What does this pattern most likely indicate?"}],"options":[{"text":[{"text":"A is the stronger model, since sustained download volume is the only counter that cannot be inflated by a burst of attention."}],"correct":false,"tempting":[{"text":"Inverts the inflation problem: downloads are the counter most easily produced by automation, while Spaces and fine-tunes require effort."}]},{"text":[{"text":"B is newer and has not yet been exercised enough to trust, so A remains the safer production choice."}],"correct":false,"tempting":[{"text":"Treats download volume as a proxy for reliability when 260 running Spaces already demonstrate B loads in many configurations."}]},{"text":[{"text":"A is probably pulled by CI or as a library default, while B is being chosen and built on by people."}],"correct":true,"tempting":null},{"text":[{"text":"The two counters measure different tasks, so the comparison is meaningless and only a leaderboard score can separate them."}],"correct":false,"tempting":[{"text":"Declines a reading the evidence supports, and defers to leaderboards that measure neither adoption nor fit."}]}],"order":[3,0,2,1],"why":null},"prev":{"slug":"the-hub-api","title":"Ask the Hub questions instead of browsing it","minutes":9},"next":{"slug":"your-first-pipeline","title":"One line that hides five steps","minutes":8}}}