eSIM-Tools: A browser-based bridge for Giffgaff and Simyo SIM-to-eSIM conversion
Giffgaff Simyo eSIM SIM eSIM (A modern set of eSIM management tools designed specifically for users who already have Giffgaff and Simyo numbers, offering support for converting physical SIM cards to eSIMs, device replacements, and QR code generation.).
At a glance
- What is it?
- eSIM-Tools is a free, open-source web app that automates physical SIM to eSIM conversion and device transfers for existing Giffgaff and Simyo customers. It runs entirely in the browser, but its narrow carrier scope and reliance on live carrier APIs define both its usefulness and its limits.
- Who is it for?
- Adopt eSIM-Tools if you already hold a Giffgaff or Simyo number, want to convert a physical SIM to eSIM or move an eSIM to a new device without contacting support, and are comfortable entering your carrier credentials into a third-party web page. Do not use it if you are a new customer seeking a number, or if you cannot accept the risk of sharing login details with a non-official tool.
- Can I use it commercially?
- Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 6 days ago.
- What is it written in?
- Mainly JavaScript, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 14, 2026, and from our analysis. They are not legal advice.
DEEP OPEN-SOURCE ANALYSIS
What eSIM-Tools actually does
eSIM-Tools solves a narrow but real problem: if you already have a Giffgaff (UK) or Simyo (Netherlands) phone number on a physical SIM, and you want to move to an eSIM or switch devices, the official process can involve contacting customer support or navigating carrier apps. This project automates that flow in a browser. The README is explicit about scope: it only supports existing users of these two carriers. New customers cannot use it to get a number. Giffgaff users are directed to third-party modified APKs for initial eSIM QR codes, and Simyo users are told to use the official app for new activations. So the tool is a post-activation utility, not a signup service. That focus is both its strength and its constraint: it does one thing well for a specific audience, and it is useless outside that audience.
The mechanism: browser-side automation with local data
The core mechanism is a web application that talks to the carriers' existing interfaces on your behalf. For Giffgaff, the recommended flow is SMS verification: you log in, receive a 6-digit SMS code, enter it, and the tool automatically activates the eSIM and generates a QR code. For Simyo, you enter your phone number (starting with 06) and password, choose a device replacement or existing eSIM retrieval, confirm an SMS code, and get a QR code. The README stresses that all data processing happens locally in the browser, credentials are not stored, and the tool works offline after load. That means the automation logic runs client-side, likely by replicating the API calls the official carrier apps or websites make. The trade-off is evident: you are handing your carrier login credentials to a third-party script. The project's security guide (docs/SECURITY.md) exists, but the README's privacy claims are self-reported. There is no mention of external audits or formal verification, so you are trusting the code plus the maintainer's reputation.
Getting it running: online or self-hosted
The easiest path is to visit the hosted instance at https://esim.cosr.eu.org, which the README recommends. No installation is needed. For developers or privacy-conscious users, self-hosting is straightforward. The README gives these commands: clone the repository, run npm install, copy env.example to .env and edit it, then run npm run dev to start a local server on port 3000. Node.js 18 or newer and npm 8 or newer are required. For production, a Netlify deployment is described: fork the repo, connect to Netlify, set the build command to npm run build, set the publish directory to dist, and configure environment variables from env.example. The project uses vanilla JavaScript with no framework, which keeps the bundle small. There is also a notification system guide and a security guide in the docs folder. The env.example file is the key configuration point, but the README does not list the actual variable names, so you will need to inspect that file yourself.
Limits and failure modes you need to know
The most obvious limitation is the carrier restriction: only Giffgaff and Simyo numbers are supported, and Simyo numbers must be Dutch 06-prefixed 10-digit numbers. That excludes everyone else. Beyond that, the README documents specific failure modes. Giffgaff's manual activation method was retired on October 8, 2025, so the tool relies entirely on SMS verification, which can fail if you do not receive the code. There is a customer-service verification option, but that adds friction. More critically, Giffgaff has a service window from 04:30 to 21:30 UK time. Outside that window, activation may fail. The page shows both local and UK time to help, but this is a hard operational constraint. If you close the page mid-activation, the system can resume from a recoverable node after re-login, but the README advises keeping the page open until completion. These are not hypothetical edge cases; they are documented in the FAQ, meaning real users have hit them.
The real alternative: carrier official channels
The direct alternative is not another open-source tool; it is the official route. For Giffgaff, that means using the carrier's own app or website, or contacting customer support, to request an eSIM replacement. For Simyo, the README explicitly tells new users to use the official app for eSIM activation. The difference in approach is fundamental: official channels are guaranteed to work with the carrier's current backend, but they may require human interaction, take longer, or lack a self-service QR code generator. eSIM-Tools automates the same underlying operations, but it is a third-party client that can break whenever the carrier changes its API or authentication flow. The README's own FAQ about the decommissioned manual activation method shows how fragile this dependency is. If Giffgaff or Simyo alter their SMS verification flow, the tool stops working until the maintainer updates it. That is the risk you accept for the convenience of a 1-2 minute automated process.
Maintenance, licensing, and what to verify before trusting it
The repository shows no recent releases, and the last push date is unknown, which makes maintenance status unclear. The README lists useful commands: npm test for tests, npm run quality-check, npm run security-check, and npm run hooks:install for Git hooks. Those are good signs of a project that cares about code health, but they do not tell you how often the author updates the tool to keep pace with carrier changes. The license is MIT for the code, which allows free use and modification. However, the README and wiki are licensed under CC BY-NC-SA 4.0, and the README adds a narrow interpretation that any profitable activity counts as commercial use. That affects redistribution of documentation, not the code itself. The disclaimer is blunt: the tool is for learning and personal use, users must follow carrier terms of service, and the developer accepts no responsibility for problems. Before you enter credentials, verify three things: the Giffgaff service window is currently in effect, your device is on the compatibility list (iPhone XS/XR or newer, Samsung Galaxy S20+, Google Pixel 3+), and you have read the FAQ issue #88 linked in the README for known issues.
Editorial conclusion
Adopt eSIM-Tools if you already hold a Giffgaff or Simyo number, want to convert a physical SIM to eSIM or move an eSIM to a new device without contacting support, and are comfortable entering your carrier credentials into a third-party web page. Do not use it if you are a new customer seeking a number, or if you cannot accept the risk of sharing login details with a non-official tool. Before relying on it, verify the current Giffgaff activation window (British time 04:30 to 21:30, per the README), check device compatibility (iPhone XS/XR or newer, Samsung Galaxy S20+, Google Pixel 3+), and read the FAQ issue #88 for known failure modes. The project is MIT-licensed for code but the README and wiki carry a CC BY-NC-SA 4.0 license with a narrow commercial-use restriction, so check that if you plan to redistribute documentation. The tool's future depends on Giffgaff and Simyo not changing their login or activation flows, so treat it as a convenience, not a permanent solution.
Community notes