Android is a complicated beast. It's one of those things that's essentially the same across tens of thousands of different device configurations, but completely different on the surface. It needs to be this way because that's how Google and its partners are able to offer a choice of many different phones at every price point yet have them all still be able to run the same apps downloaded from the same place. The fact that it gets shipped out the door is a complete marvel and mystery.
It can get even more confusing when you add "special" versions of Android designed for a specific class of hardware into the mix, like Android One and Android Go. It can be difficult to understand the differences between all the versions, let alone trying to compare Android Go to Android One, which are both advertised as a version of Android designed for budget hardware. Android on ultra-slim hardware is both a business strategy — Google wants the Next Billion — as well as a way to help developing countries build out infrastructure and offer services to places that don't yet have them available.
Software engineers and application developers know the differences and nuances of the Android platform, but it's really not too tough for us regular folks to understand once it's broken down.
What is Android One?
You could think of Android One as a way companies like Nokia and Motorola can build phones with the Pixel's software and you wouldn't be too far off the mark.
When a "regular" Android phone is in production, the company making it decides what hardware to use, then uses the Android source code to create its own operating system. There is a lot of leeway given to a company like Samsung that lets it create great Android phones and then build out the software and operating system to support the extras included in them. If the company building these phones would like to include Google's services and branding — that would be Google Play, Gmail, Google Photos, Chrome, and the other Google apps we find preloaded on most phones we buy — the device has to pass a set of tests.
Android One is Google's Android on phones from other partners.
These tests really only do one thing: make sure the device will be able to run every standard app that's in Google Play. Google has to do this to offer its own app marketplace; imagine how bad things would be if you had no idea which apps from the Play Store would work on your phone. By making every phone pass these tests, Google can then standardize how apps are written for the Play Store and everything works everywhere.
With an Android One device, the company building it loses some of that independence when it comes to the hardware and software. When an Android One phone is in production, Google makes the final decision about the hardware used, so it can be sure that the end product is a "high-quality but low-cost" Android smartphone. It then oversees the software production and maintains the responsibility to keep the device updated and running well throughout its lifetime. Android One was primarily designed for the Indian market but has expanded to include phones for everyone no matter where they live.
What is Android Go?
Android Go isn't a special version of Android like Android One or "regular" Android that is on a Google Pixel phone. It's the very same Android (Android Oreo or higher) designed and optimized for low-end hardware with 1GB of RAM or less.
When a company that makes phones takes the Android source code and builds out their version of the operating system, it sets up a device configuration. This configuration is designed to best support the hardware inside the phone and it's a shortcut that can be used whenever Android needs rebuilt (like when a security path needs to be added) for that particular device. Going through source files is tedious and many of the edits will never change, and this is how all those edits are kept track of.
Android Go is designed by Google but built by the companies who make the phones.
Android Go is a configuration that's been designed by Google with platform-level tweaks for optimization of lower-end hardware, more tools for data management, and a special "light" version of Google's mobile services. Companies that make phones are able to use this configuration as the base for building Android, and once specifics for hardware support are added no further optimization should be necessary.
While Android Go includes special versions of Google's apps that have been designed for devices with 1GB of RAM or less, Android Go phones are able to download and install any app from Google Play just like Android One and "regular" Android phones are. the difference is that there is a specific area in the Play Store for apps optimized for Android Go phones.
Android Go debuted in early 2018 with phones from Nokia, ZTE, Alcatel, ASUS, Lava, Micromax, and General Mobile. In July 2018 Motorola used Android Go to power their incredibly successful E series with the E5 Play for the European Market.
A name is a name
In the end, this really doesn't have to matter unless you're a developer — and that's by design.
Android, Android One, and Android Go are all ways to offer Android-powered phones that runs well on the hardware inside of them and can use any of the one million plus apps found in Google's Play Store. It may provide more work for developers and be a bit confusing for enthusiasts that want to know about the various versions and differences, but in the end it's all "just Android."