CINXE.COM
NLnet; GoatCounter
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/><meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" /><meta name="theme-color" content="#ffffff" /><meta name="robots" content="index,follow" /><link rel="shortcut icon" href="/favicon.ico" /><link rel="icon" type="image/x-icon" href="/favicon.ico" /><link rel="stylesheet" type="text/css" href="/nlnet.css" media="screen, projection" /><link rel="alternate" type="application/atom+xml" title="NLnet News" href="/feed.atom" /><title>NLnet; GoatCounter</title> </head> <body class="" id="topofpage"> <div class="notice"><a href="#main" class="skip">To main content</a><div class="container"> <div class="row"> <div class="col12" id="call_banner"><strong><span><a href="/news/2025/20250401-call.html">Send in your ideas. Deadline June 1, 2025</a></span></strong><script> if (document.location.host !== "nlnet.nl") { const banner = document.getElementById('call_banner'); const a = document.createElement("a"); a.href = "https://nlnet.nl" + document.location.pathname; a.appendChild(document.createTextNode("compare")); a.style.float = "right"; banner.appendChild(a); } </script></div> </div> </div> </div> <nav id="nav_main"> <div class="container"> <div class="row"> <div class="col12"> <div class="flex wide_nav"><a href="/"><img src="/logo/banner.svg" alt="NLnet logo" class="header_logo" /></a><div id="main_menu"><label for="show-menu" class="show-menu"><span class="gg-menu"></span><span class="hide">Menu</span></label><input type="checkbox" id="show-menu" role="button" /><ul> <li><a href="#">Funding</a><ul class="hidden"> <li><a href="/funding.html">Apply for funding</a></li> <li><a href="/themes/">Theme funds</a></li> <li><a href="/NGI0/">NGI Zero</a></li> <li><a href="/NGI0/services/">Support services</a></li> </ul> </li> <li><a href="#">Projects</a><ul class="hidden"> <li><a href="/project/index.html">All projects</a></li> <li><a href="/project/current.html">Currently running</a></li> <li><a href="/thema/">Thematic index</a></li> <li><a href="/stories/">Stories</a></li> </ul> </li> <li><a href="#">News & events</a><ul class="hidden"> <li><a href="/news/">News</a></li> <li><a href="/events/">Events</a></li> <li><a href="/webinars/">Webinars</a></li> <li><a href="https://podcast.nlnet.nl/@NGIZero">Podcast</a></li> <li><a href="/tour-schedule/">NGI Zero Tour Schedule</a></li> <li><a href="/speakerbureau/">Speaker bureau</a></li> </ul> </li> <li><a href="#">Resources</a><ul class="hidden"> <li><a href="/NGI0/bestpractices/">Best practices</a></li> <li><a href="/pres/">Presentations</a></li> <li><a href="/hex/">Hex stickers</a></li> </ul> </li> <li><a href="#">Support NLnet</a><ul class="hidden"> <li><a href="/donating/">Financial contribution</a></li> <li><a href="/help/">Join the OIN</a></li> </ul> </li> <li><a href="#">About us</a><ul class="hidden"> <li><a href="/foundation/">Foundation</a></li> <li><a href="/people/">People</a></li> <li><a href="/press/">Press</a></li> <li><a href="/foundation/media-coverage/">In the media</a></li> <li><a href="/contact/">Contact</a></li> </ul> </li> </ul> </div> </div> <!-- <div class="mobile_nav"> <details> <summary class="flex"> <a href="/"> <img src="/logo/banner.svg" alt="NLnet logo" class="{$logo_class}"/> </a> <div> <img src="/image/veganburger.svg" alt="menu"/> </div> </summary> {$topnav} </details> </div> --> </div> </div> <div class="row"> <div class="col7"> <ul class="breadcrumb"> <li><a href="/project/"><img src="/image/ic_projects.svg" alt="icon" />Projects</a></li> <li><a href="/project/GoatCounter">GoatCounter</a></li> </ul> </div> </div> </div> </nav> <div class="container"> <div class="row"> <div class="col3 reorder1"> <div class="box marge bg_rounded"><a href="https://www.goatcounter.com"><img src="/project/GoatCounter/goatcounter.svg" alt="logo" class="width-constrained" /></a></div> <div></div> <div class="box marge bg_grey rounded"><strong>Resources</strong><br /><a href="/gallery/repology.html#repology_Repology"><img src="/image/badge/repology_badge.svg" alt="Repology" class="width-constrained" /></a><br />Source code :<br /><a class="constrainedlink" href="https://github.com/zgoat/goatcounter">https://github.com/zgoat/goatcounter</a><br />Documentation :<br /><a class="constrainedlink" href="https://www.goatcounter.com/help">https://www.goatcounter.com/help</a></div> <div class="box marge bg_grey rounded"><strong>Vendor stores</strong><br /><a href="https://github.com/ngi-nix/magic_rb-goatcounter"><img src="/image/badge/NixOS_badge.svg" alt="Nix Flake" class="width-constrained" /></a></div> <div class="box marge bg_grey rounded"><strong>Website</strong><br />More info available :<br /><a class="constrainedlink" href="https://www.goatcounter.com">https://www.goatcounter.com</a></div> <div class="box marge bg_grey rounded"><strong>Grant</strong><br />Theme fund: NGI0 PET<br />Period: 2019-12 — 2022-10</div> <div class="box marge bg_grey rounded"><strong>More projects like this</strong><div><a href="/thema/Measurement.html">Measurement</a></div> <ul class="marge rounded pointer"> <li>See <a href="/thema/">all themes</a></li> </ul> </div> <!-- disabled for now <div class='box marge bg_grey rounded'><strong>Next project:</strong><br />> $next_project </div> --> </div> <div class="col6" id="maincolumn"> <h1 class="column_heading">GoatCounter</h1> <p><em>Privacy-friendly web analytics for small websites</em></p> <div class="abstract"> <p>GoatCounter aims to provide meaningful privacy-friendly analytics for businesspurposes, while still staying usable for non-technical users to use onpersonal websites. The choices that currently exist are between hosted online services that have serious privacy issues, running your own complex software, or extremely simplistic "vanity statistics". GoatCounter attempts to strike a good balance between various interests. Major features include an easy to run self-hosted option, an intuitive user interface that is also accessible to website maintainers with accessibility needs, and meaningful statistics that go beyond "vanity stats" but still respect user privacy.</p> </div> <ul class="box marge bg_grey rounded pointer"> <li>The project's own website: <a href="https://www.goatcounter.com">https://www.goatcounter.com</a></li> </ul> <h3>Why does this actually matter to end users?</h3> <p>As you fire up your computer, laptop or smartphone and click your browser icon to connect to your favorite site, do you know what happens behind the scenes? Many websites actually have dozens of different trackers, and some of these have such a global presence that they can form a pretty clear picture of ones online behaviour. Some argue that privacy is and has been dead for quite some time. As long as users have a quick internet connection and can access the web, email, games and messages without a hitch, they won't complain. But if you question people about the importance of online privacy, usually the answer is that it is indeed important and should be better protected. What is happening here? Perhaps we misunderstand carelessness with unfamiliarity. The technology behind most of our devices, our connection to the internet and the virtual spaces we inhabit is complex, yes, but the solutions we use to access them have also kept actual control away from us under the guise of 'intuitiveness' and 'pick up and play'. Playing here means playing by the rules of the developer, not by your own. What users instead should have are tools that give them actual access to what their devices do, what choices are made, and decide for themselves whether they agree with them or not.</p> <p>Privacy isn't dead, we just lack the tools to actually protect it. This is true for both the user as for the website owner that wants to know who their visitors are. Web analytics software is usually invasive by default and give a website owner little control over what data is logged and who else gets to access it. This is not only unfriendly to your website visitors, it can also be bad for business when profiling data is leaked or misused by a third party and you are held responsible. Instead of giving away so much control over the website you own and the visitors you want to attract, why not do it yourself?</p> <p>GoatCounter is an effort to develop simple web statistics technology that does not track users, is more accessible and easy to use than proprietary analytic services and at all times lets you own your analytical data. This is one of the tools we need to make an internet that revolves around its users: privacy-friendly by default, transparent and only owned by yourself.</p> <div class="attention"> <p><a href="https://NLnet.nl" name="ack"><img src="/logo/banner.svg" alt="Logo NLnet: abstract logo of four people seen from above" class="logocenter" /></a> <a href="https://NLnet.nl/NGI0"><img src="/image/logos/NGI0PET_tag.svg" alt="Logo NGI Zero: letterlogo shaped like a tag" class="logocenter" /> </a></p> <p>This project was funded through the <a href="/PET">NGI0 PET</a> Fund, a fund established by <a href="https://nlnet.nl">NLnet</a> with financial support from the European Commission's <a href="https://ngi.eu">Next Generation Internet</a> programme, under the aegis of <a href="https://commission.europa.eu/about-european-commission/departments-and-executive-agencies/communications-networks-content-and-technology_en">DG Communications Networks, Content and Technology</a> under grant agreement N<sup>o</sup> <a href="https://cordis.europa.eu/project/id/825310">825310</a>.</p> </div> </div> <div class="col3 reorder2"> <div> <h3>Navigate projects</h3> <ul class="pointer"> <li><a href="/project/current.html">Currently running</a></li> <li><a href="/project/index.html">All projects</a></li> <li><a href="/thema/index.html">Thematic index</a></li> </ul> <p class="box marge"> <h5>Currently open for proposals:</h5> </p> <ul class="pointer"> <li><a href="/commonsfund/">NGI0 Commons Fund</a></li> <li><a href="/taler/">NGI TALER</a></li> <li><a href="/mobifree/">NGI Mobifree</a></li> <li><a href="/fediversity/">NGI Fediversity</a></li> </ul> <div><a href="/foundation/jobs/regionalrepresentative.html" class="part part_link part_green"><img src="/image/git-merge-2.svg" width="40" height="40" alt="git merge icon" /> <h5 class="color_white">Job openings</h5> <font color="white">NGI Zero is looking for Regional Representatives.</font> </a></div> <div><a href="https://podcast.nlnet.nl/@NGIZero" class="part part_link part_blue"><img src="/image/ic_antenna_white.svg" width="40" height="40" alt="podcast logo, antenna with radio waves" /> <h5 class="color_white">Listen to our podcast</h5> <font color="white">Conversations with people building the Next Generation Internet</font> </a></div> <!-- <div> <a href="https://social.nlnet.nl/@nlnet" class="part part_link part_blue"><img src="/image/ic_fediverse.svg" width="50" height="50" alt="fediverse logo, 5 nodes in pentagon shape with all diagonals, black" /> <h5 class="color_white">Come meet us in the Fediverse</h5> @nlnet@nlnet.nl </a> </div> <div> <a href="/bluehatsprize/" class="part part_link part_green"><img src="/image/ic_hat.svg" width="40" height="40" alt="bluehats logo, three blue hats" /> <h5 class="color_white">Nominate FOSS projects</h5> Nominate Free Software Projects for the four €10.000 BlueHats Prizes. </a> </div> <div> <a href="/help" class="part part_link part_green"><img src="/image/ic_hand.svg" alt="" /> <h5 class="color_white">Want to do us a favour?</h5> Help us with 5 minutes of your time. </a> </div> --> </div> <div class="part"> <h3>Search</h3> <form onsubmit="/js/searchbutton.js" method="get" accept-charset="UTF-8" action="/search/static.html" class="sitesearch"><input id="searsia-input" type="text" name="q" class="form-control" value="" autocomplete="off" /><label for="searsia-input"><span class="hide">Search</span></label><input type="submit" id="searsiasubmit" name="submit" value="Search" /><label for="searsiasubmit"><span class="hide">Submit search</span></label></form> </div> </div> </div> </div> <footer> <div class="container"> <div class="row"> <div class="col3"><strong>NLnet</strong><ul class="menu"> <li><a href="/foundation/">Foundation</a></li> <li><a href="/people/">People</a></li> <li><a href="/press/">Press</a></li> <li><a href="/foundation/media-coverage/">In the media</a></li> <li><a href="/contact/">Contact</a></li> <li><a href="/privacy/">Privacy statement</a></li> </ul> </div> <div class="col3"><strong>News & events</strong><ul class="menu"> <li><a href="/news/">News</a></li> <li><a href="/events/">Events</a></li> <li><a href="/webinars/">Webinars</a></li> <li><a href="/tour-schedule/">NGI Zero Tour Schedule</a></li> <li><a href="/speakerbureau/">Speaker bureau</a></li> </ul> </div> <div class="col3"><strong>Connect with us</strong><ul class="menu"> <li><a href="https://social.nlnet.nl/@nlnet" rel="me">Fediverse: NLnet</a></li> <li><a href="https://mastodon.xyz/@NGIZero" rel="me">Fediverse: NGI Zero</a></li> <li><a href="https://podcast.nlnet.nl/@NGIZero/">Our podcast</a></li> <li><a href="https://vc.ngi-0.eu/rooms/ahq-y96-uhs-jka/public_recordings">Our webinars</a></li> <li><a href="/feed.atom">RSS feed</a></li> </ul> </div> <div class="col3"><strong>Site search</strong><p></p> <form onsubmit="/js/searchbutton.js" method="get" accept-charset="UTF-8" action="/search/static.html" class="sitesearch"><input id="searsia-input" type="text" name="q" class="form-control" value="" autocomplete="off" /><label for="searsia-input"><span class="hide">Search</span></label><input type="submit" id="searsiasubmit" name="submit" value="Search" /><label for="searsiasubmit"><span class="hide">Submit search</span></label></form> </div> </div> <div class="row"> <div class="col3"><strong>Funding</strong><ul class="menu"> <li><a href="/propose/">Open calls</a></li> <li><a href="/themes/">Theme funds</a></li> <li><a href="/NGI0/">NGI Zero</a></li> <li><a href="/NGI0/services/">Support services</a></li> </ul> </div> <div class="col3"><strong>Projects</strong><ul class="menu"> <li><a href="/project/">All projects</a></li> <li><a href="/project/current.html">Currently running</a></li> <li><a href="/thema/">Thematic index</a></li> <li><a href="/stories/">Stories</a></li> </ul> </div> <div class="col3"><strong>Newsletters</strong><ul class="menu"> <li><a href="https://lists.nlnet.nl/mailman3/lists/newsletter.lists.nlnet.nl/">NLnet newsletter</a></li> <li><a href="https://lists.ngi-0.eu/subscribe/ngizero-newsletter">NGI Zero newsletter (subscribe)</a></li> <li><a href="https://lists.ngi-0.eu/rss/latest_arc/ngizero-newsletter?count=20">NGI Zero newsletter (RSS)</a></li> </ul> </div> <div class="col3"><strong>Support NLnet</strong><ul class="menu"> <li><a href="/donating/">Financial contribution</a></li> <li><a href="/help/">Join the Open Invention Network</a></li> </ul> </div> </div> </div> </footer> </body> </html>