factr2FA authenticator for Android
The one-time codes for your logins – but with folders, colours and as many home screen widgets as you like. factr computes everything on your device, shows no advertising and is free to use.
Features
06Folders and colours
Accounts get their own name, a background colour and as many folders as you like – personal, work, client X. An account may sit in several folders at once, because your email account genuinely belongs to both. Pick the colour from a pastel palette or freely via colour wheel and hex value.
Home screen widgets
Two kinds: one account large, or several stacked compactly. As many instances as you want, each with its own account selection. Tapping copies the code. If you would rather not have a code sitting on your home screen permanently, set that instance to “reveal on tap”.
Add accounts however it suits
Scan the QR code with the camera – or pick an image from your gallery, because when you set things up at a computer the code is often a screenshot. If there is no QR code at all, type the secret, either as Base32 or hexadecimal. Time-based and counter-based schemes are both supported.
Moving from Google Authenticator
Google Authenticator's bulk export is read directly, including when it is spread across several QR codes. Duplicate accounts are detected, and you decide whether to skip, replace or keep a copy. Individual otpauth:// codes work anyway.
A backup that is yours
An encrypted export into a file of your choosing, with a password only you know. No account, no mandatory cloud, no provider in between. The flip side is stated in the dialog itself: without that password the file is lost for good – to us as well.
Compact, once there are many
Past thirty accounts any card list becomes unwieldy. The compact layout switches to narrow, single-line cards – same colour coding, three times as many accounts at a glance. Plus a collapsible search and filters by folder or favourite.
What it looks like
The images follow once the app leaves closed testing. What each of them will show is already written beneath the frames.
What is different from Google Authenticator
factr is built for the everyday in which five accounts have become forty: personal and work ones jumbled together, a code needed ten times a day, and all of it without a connection to the outside. What that means next to Google Authenticator:
| factr | Google Authenticator | |
|---|---|---|
| Folders / groups | yes, an account may sit in several | no |
| Colour per account | palette or free colour choice | no |
| Home screen widgets | two kinds, any number of instances | no |
| Favourites and filters | yes | no |
| Compact list layout | switchable | no |
| Search | collapsible | yes |
| Import from Google Authenticator | yes, incl. multi-QR and duplicate check | — |
| Backup | encrypted file, you choose place and password | via your Google account |
| Network access of the app | only for the one-off purchase check | yes, for syncing |
| Google Play services in the build | only via payment handling | yes |
| Optional app lock | yes, biometrics or device PIN | no |
| Ads, tracking, advertising ID | none of it | no ads |
Google Authenticator and Google Play are trademarks of Google LLC. Neither this app nor this page is affiliated with Google; the names appear solely to identify the product being compared to and imported from. Comparison as of September 2026.
Security, in detail
An authenticator app is entrusted with the keys to every other account. What it promises should therefore be verifiable – here is what factr commits to, and how to check it.
Secrets in the Android Keystore
Every TOTP secret sits in the local database encrypted with AES-256-GCM. The key for it is generated in the Android Keystore and is not exportable – it never leaves secure hardware, not even for a system backup. Where the device has a dedicated security chip (StrongBox, Android 9 and later), that is used.
Network only for the purchase check
The only connection factr opens arises from the purchase: Play Billing asks Google Play whether Pro exists. There is no server of ours for anything to flow to, and no syncing of your data. Your accounts and codes take part in no connection at all – you can verify that without us, since in flight mode the app keeps working in full. What the Google components of that library report to Google beyond this is named in the privacy policy; it is not in our hands.
Google services only where the purchase forces them
Here the honest answer is the uncomfortable one: the library for the Pro purchase (Google Play Billing) pulls in Google components, among them play-services-base and Google's data transport, through which those libraries report diagnostics to Google. We embed them nowhere else, do not configure them and receive nothing from them – but we cannot switch them off either. Wherever the choice was genuinely ours, it went the other way: the QR scanner uses ZXing rather than Google's ML Kit, which would have brought the same transport along.
No tracking, no advertising
From us there is no analytics SDK, no crash reporting service, no ad network, no advertising ID. Which also means we do not learn how many accounts you have or how often you open the app – there is simply no path by which that could reach us. The app is funded by the one-off Pro unlock, not by your data: an ad-funded authenticator app undermines precisely the trust it lives on.
Screenshot protection
Every screen showing codes, secrets or the QR preview is marked FLAG_SECURE: no screenshots, no screen recording, no thumbnail in the recent apps list. A side effect we accept: you cannot take screenshots of those screens either.
Not in the device backup
The app is excluded from Android's automatic backup and from device transfer. So your secrets do not end up in some cloud backup in passing, merely because the system setting is on. They reach a new phone solely through the export you trigger yourself.
Backup with your own password
The export file is encrypted with a key derived from your password via PBKDF2-HMAC-SHA256 at 210,000 iterations (the OWASP recommendation); encryption is AES-256-GCM. The Keystore key is unsuitable for this – it cannot leave the device and would be worthless on the new phone.
Codes per RFC, verified
Code generation follows RFC 6238 (time-based) and RFC 4226 (counter-based) and is checked against the test vectors of both documents. Secrets may be entered as Base32 or hexadecimal, because some providers hand out one and some the other.
Two trade-offs, stated openly
The app lock protects the app – not the widgets
The optional app lock (fingerprint or device PIN) is off by default and applies to the app screen only. The home screen widgets deliberately stay unlocked: their entire purpose is a code without opening the app, and a prompt in front of it would abolish that. Anyone wanting both – lock and quick access – has to choose. The app says so in the settings text instead of quietly favouring one side. For the same reason the Keystore key is not bound to user authentication, as the widgets could otherwise not compute at all.
A code on the home screen is a visible code
A widget that displays the code displays it to anyone glancing at the screen – and FLAG_SECURE does not help there, because the home screen does not belong to the app. That is why every widget instance has a “reveal on tap” setting: the code stays covered until you need it. For the widget on the drawer at home, “always visible” is more convenient; for the one on your home screen at the office, it is not. That decision sits with you per instance, not with us across the board.
Free and Pro
factr is free, and the free version is a complete authenticator app: unlimited accounts, live codes, widgets, import, encrypted backup, every security feature. What is limited is only how finely you can sort and style things.
| Free | Pro · 5 € once | |
|---|---|---|
| Accounts | unlimited | unlimited |
| Folders | up to 3 | unlimited |
| Codes per folder | up to 5 | unlimited |
| Icon selection | basic set | full set |
| Custom icons | – | yes |
| Colours, favourites, search | yes | yes |
| Home screen widgets | yes | yes |
| Import and encrypted backup | yes | yes |
| Advertising | none | none |
Pro costs 5 € – once, no subscription, no follow-up costs. The purchase goes through Google Play and lifts the limits permanently; the free version does not expire and shows no advertising either.
What happens when the limit is lifted
Nothing is lost if you stay on free: your accounts remain fully usable, you simply do not create folders beyond the limit. Conversely, Pro requires no migration – the limits just fall away and your existing arrangement stays exactly as it is.
Why money rather than advertising: an app that manages one-time codes cannot fund itself through advertising without damaging precisely the trust it lives on – ad networks want a device ID, a permanent connection to the outside and, ideally, a usage profile. None of that belongs in an authenticator app. The one-off Pro unlock is the alternative, and it is the only reason the app goes online at all.
Privacy
There is no server of our own, no account and no sign-up. Your accounts sit encrypted on the device and leave it only when you write a backup yourself. We collect nothing: no analytics, advertising or crash reporting SDK, no advertising ID. What we cannot get rid of, we name instead of hiding – the library for the Pro purchase brings Google components along that can report diagnostics to Google. Both are covered in detail in the privacy policy of the app.
This website has a policy of its own – see Privacy for what happens when you merely visit this page.
Frequently asked
How many accounts do I get without Pro?
As many as you want. The free version limits the tidying, not the accounts: up to 3 folders with 5 codes each. Accounts that sit in no folder are unlimited – so even with fifty of them the app stays fully usable, just as one long list rather than sorted. Pro lifts the limits and additionally unlocks the full icon selection and custom icons.
Does factr work with every service offering 2FA?
With every one that follows the usual standard – which is practically all of them. factrgenerates time-based codes per RFC 6238 and counter-based ones per RFC 4226; an account is set up by QR code, from an image in your gallery, or by typing the secret. Services with their own push scheme (a fingerprint confirmation inside the provider's own app, say) cannot be served by any third-party authenticator app by design.
How do I move over from Google Authenticator?
Choose “export accounts” there and scan the resulting QR codes with factr – several in sequence if the export is spread across multiple codes. Duplicates are detected and you are asked what to do. Your accounts remain in Google Authenticator throughout, so you can compare at leisure before deleting anything there.
What happens if I lose my phone?
Without a backup the accounts are gone – what remains is the recovery codes of your services. That is exactly what the encrypted export is for: create it right after setup, keep it separate from the phone and remember the password. There is no reset, neither for you nor for us – that is the price of nobody else being able to open the file.
Can I use my accounts on several devices?
Today only by restoring the same backup on the second device. An optional sync through your Google Drive is planned for a later version and would transfer nothing but the already encrypted backup file. It is not part of this version and will, when it arrives, have to be switched on explicitly.
Why can't I take screenshots in the app?
Because every screen showing codes sets FLAG_SECURE – the same mechanism banking apps use. It stops an app running in the background from capturing the screen content, and consequently stops you from taking a screenshot too.
Which languages does the app support?
Deutsch, English. Android 7.0 and later.
What does this have to do with rellit.de?
The same person behind it. rellit.de collects small tools that run in the browser – factr is one for the phone, which is why it gets its own address here.