Why should your android app speed matter?
I made a tweet some weeks back about how some mobile apps take long to load up. Asides the poor user experience, this can affect your bottom line.
In this article, I’ll show you how we upped Cowrywise android app speed. The app has tons of modules (Savings, Investments, Circles, Stash, Profile, etc). Hence, there’s a lot of data flows at any point in time. Given that, it won’t be fair to have a user wait for all pages to load before they make a specific action.
Android app speed starts with the SSOT (Single Source of Truth)
Simply put, the SSOT refers to having accurate data in one place. That way, any needed data is simply referenced from that source. This works better than having your data scattered around multiple places.
On the Cowrywise app, We always display the data from the app’s local database which lives on the user’s phone. Once the user logs in, We fetch recent (and most important) data in the background with the WorkManager API.
The WorkManager API makes it easy to schedule multiple tasks that are expected to run even if the app exits or device restarts.
Android Developer Documentation
That way, the load on the app’s interface thread is reduced. In turn, the user is able to switch between screens as fast as possible. Once the user gets to the page they are looking for, data required for that page would have already been fetched. We also offload certain one-off tasks to WorkManager.
The app fetches what is in the local database while displaying progress indicators/placeholders where necessary.
How we handle state changes
Using LiveData and Coroutines, We’re able to keep track of the loading, success and error states in the app. Data for UI is wrapped with a Resource class which has 4 states.
In the Fragment, we can then observe different states and update the UI respectively.
Placeholders and your android app speed
Sometimes your android app speed can be an illusion. When a task is going to take a while, there’s a need to inform the user without blocking interaction with other parts of the app. To do this, many make use of progress indicators and progress Dialogs. While these are good, they pose two problems:
- The user has no expectation of what is to come
- They are boring and plain
The combination of both problems can mess with the user’s mind. Yes, the process is taking time but it can feel longer with those. On the other hand, using skeleton screens, a mind game is played. As we move on, you’ll see how we have applied this approach.
Skeleton screens vs progress indicators
Skeleton screens are another way to focus on progress instead of wait times. A skeleton screen is essentially a blank version of a page into which information is gradually loaded. This creates the sense that things are happening immediately as information is incrementally displayed on the screen. With a skeleton screen, the focus is on content being loaded not the fact that its loading and that’s real progress.
Luke Wroblewski
Loading appears faster to the user because the focus has shifted from loading progress to the content that is being loaded. Some examples are shown below


Still on Placeholders: Spinners vs Progress Dialogs
We also got rid of 95% of all ProgressDialogs in the Cowrywise android app (iOS also). Then, we replaced them with progress indicators as recommended by Google:
ProgressDialog is a modal dialog, which prevents the user from interacting with the app. Instead of using this class, you should use a progress indicator like ProgressBar, which can be embedded in your app’s UI. Alternatively, you can use a notification to inform the user of the task’s progress.
Android Developer Documentation
The login screen is an example of this. We show the progress indicator on the button. That way, the user can still interact with the app despite the loading process.

Got questions for me? You can drop a comment or ask me on twitter. If you’d love to read more about my team’s work at Cowrywise, check out how we managed to keep the android app size small here.


What if naira gain some percentage, will it affect the money invested?
If you convert the investment back to naira, at that point, yes. However, it works the other way round too. Finally, this doesn’t affect your returns.
The interest is gotten per month or how many months do i have to leave the money that has been invested
Please if I don’t have up 100USD, does it mean I can’t invest.
Not anymore. You can now invest with as low as $10
Ӏ ցot thіs website fгom mү pal ᴡho shared with mе regarding thiѕ
website and now tһis timе I ɑm browsing thiѕ website аnd reading very informative articles or reviews at this time.
I love this!!! I am definitely brilliant opportunity for retail investment. What is your take on Creating a Real estate funds ( focused on commercial and residential property development in Nigerian major cities)?
Trust me, Nigerians, home and abroad, are waiting to join on such opportunity to invest in a well-structured security that addresses not just documentation/regulatory issues, but also handled by real professionals.
Is it possible to invest to add to your investment on dollar mutual fund?
Yes, please.
How many is the minimum units I can withdraw?
0.5 Units
Can l continue to add to my investment monthly?
Yes, and you can do so automatically as well.
What is the naira equivalent of 0.5 units
Hello Ope…my question on the Eurobond. As @ today 20th November entry exchange rate 460 (buy rate) and exit/sell rate is 450..if at some point in a one year tenor…the rate increases..will the exit/sale rate also increase. I have a plan on cowrie already and want some capital preservation. Though i have noted from your platform that there is quite a significant rate difference between the sell/buy rate in addition to a processing fee that runs somewhat high
Hi Jay,
Yes, you also earn returns from changes in the value of the Naira against the USD. This means that you gain additional returns as a Nigerian who has invested in Eurobonds if Naira to USD increases.
However, it works the other way round too but this doesn’t affect your returns.
In what currency is the return paid?
It is currently paid in Naira. However, we’re actively working on an option that allows you receive your earnings in dollars.
How soon is soon? I had to discontinue my investment because of this.
Let’s talk about the Value of Naira itself. The Value of Naira in 2019 and 2021 is definitely different. What you could buy at N360,000 in 2019 probably cost that N540,000 in 2021 or even more. So basically you’ve just matched the value of the Naira which is not guaranteed as Inflation rate is about 30%. So we need investments that can match that rate o
How to get started via the app?
Hi Akpevwe,
In the app,
– Click on the “Actions” tab, Click “Invest in Mutual Funds”
– Tap “Dollar Mutual Funds” and invest in your preferred option
Pls how can I invest with my savings
My account was flagged and since then it has been rough for me
Please I need my account to be normal again
Hi Udochukwu, we’re working on it right away
Hi Udochukwu,
We’ve been trying to reach you.
Can you kindly send an email to support@cowrywise.com to rectify this?
Thanks!
Please… how long will my dollar mutual funds last before I can withdraw
I have a domiciliary accounts can I transfer to make investment like 20dollars
Ope is it possible to deposit dollar into my cowrywise stash
But my take is on; investment in dollars should get returns paid in dollars not the other way round
You get Dollar returns on your dollar investments.
Would you advice for mutual investment for a period of 3-5months?
I plan on investing monthly. Is $10 the least amount required for investing?
I wanted to save money since yesterday but is not going through
Is my dollar investment locked? How do I withdraw from it?
And hw long does it take to credit my stash after selling my unit on my dollar account
@Ope, I can’t find invest in mutual funds in my updated cowrywise app. Is the plan no longer there.
How long does it take for the money I invested in dollar mutual fund to reflect in my cowrywise app via bank transfer.
Is it possible to transfer from the normal savings On cowrywise to Dollar mutual funds?
Great read.
Amazing tips
Hey Ope,
Is it possible for me to withdraw my invested dollars into a dorm account upon maturity?
If I should save in dollar will I get paid in cash with dollar?