Hendar Nugraha
← Back to home
October 6, 2026

When MSME Data Learns to Read a Business's Journey

In my thesis, an LSTM-based model predicted MSME revenue better than conventional algorithms and turned those predictions into suggested interventions, pointing toward data-driven MSME empowerment.

Imagine an officer at the Cooperatives and SMEs Office who must design next year's empowerment programs. On the desk sits thousands of rows of data on business owners: age, assets, revenue, training history, access to financing, whether they sell online yet. Every number has a story, but nobody can read 2,789 stories one by one. So decisions are often made in simpler ways: repeating last year's programs, or giving everyone the same training.

The question I set out to answer in my thesis is not whether a machine can replace that officer's judgment. It is narrower and, to me, more interesting: can machine learning read the historical data of micro, small, and medium enterprises (MSMEs) so that officers know which businesses need help first, and what kind of help?

To explore this, I used data on fashion-sector MSMEs in Bandung Regency from 2020 to 2024, obtained from the Cooperatives and SMEs Office. This article summarizes what I found, what I built, and where I think the work should go next.

What the Data Showed: Reach Is No Longer the Problem

The data painted a picture I did not fully expect. Some 98.8% of business owners had attended training, and 99.5% had access to financing. The average owner was 38 years old, and half were under 37. Fashion clearly appeals to younger generations.

Yet 51.2% of MSMEs did not use digital channels such as social media, marketplaces, or websites. Average revenue rose from about Rp160.8 million in 2020 to about Rp221.7 million in 2024, but revenue per business unit dipped slightly, by about 1.1%, between 2022 and 2024. Most businesses were also still micro: half employed only one or two people.

In other words, programs already reach almost everyone. What is not necessarily right is the fit between each program and each business's needs. This is where I believe data can help.

Revenue Is a Journey, Not a Single Number

Here a distinction often gets blurred. Many machine learning models treat each feature as a standalone number. But a business's revenue is a sequence: up in the first year, flat in the second, down in the third. Two businesses with the same revenue today can have very different futures depending on the direction of their journey.

That is why I chose a Recurrent Neural Network (RNN), specifically LSTM, an architecture designed to recognize sequential patterns and retain long-term information. I compared it with four conventional algorithms. In predicting 2025 revenue, LSTM reached an R² of 0.76, compared with 0.71 for Gradient Boosting, 0.68 for Decision Tree and Random Forest, and just 0.35 for SVR. One caveat I should state plainly: Random Forest actually had a lower MAE than LSTM, so LSTM's advantage is not absolute across all measures.

The conventional models are not bad. They simply have no built-in mechanism for understanding time.

From LSTM to Hybrid Models

I then tested 10 combinations of LSTM with other architectures, such as Transformer, CapsNet, BiLSTM, and XGBoost. The winner was LSTM-FCN, which pairs LSTM's reading of long-term patterns with convolutional layers that capture local patterns across features. In the model comparison its R² was about 0.94, and in the system's final training it reached 0.9534. Its processing time was also the fastest, at just 0.108 seconds.

A side finding surprised me just as much: complexity does not guarantee results. LSTM-XGBoost, which looks sophisticated on paper, scored the lowest (R² 0.646) and was the slowest. The best model was not the most complicated one, but the one that best fit the character of the data.

From Prediction to Decision

A revenue prediction is only useful if it can be acted on. So I designed the system to turn predicted growth into five business categories:

High Performer (growth ≥ 25%): candidates to serve as role models for others.
Growing (10–25%): high potential, worth encouraging.
Stable (0–10%): needs a push to move up a level.
At Risk (decline of 0–10%): needs attention.
High Risk (decline of more than 10%): needs earlier intervention.

The architecture has three layers. Data is stored in a MySQL database, the model runs through a Flask server with dual inputs (revenue time series and static context data), and results appear in an interactive visual interface that office staff can read without needing to understand the model's internals.

An Imagined Cycle

From these pieces, I imagine a fuller working cycle:

MSME data is collected and organized into a single database.
The model predicts the revenue trajectory of each business.
The system groups businesses and suggests the type of intervention: training, financing, or digitalization.
The office and mentors run the matching programs.
After a year, new revenue data comes in and the model is retrained.
The system compares its predictions with reality, then improves its recommendations.

I want to be honest about the status of this work. I built and tested steps 1 to 3 on historical data as a prototype. Steps 4 to 6 have not yet been run in the field. My study limits its scope to a prototype and simulated testing, not real deployment at an institution.

Fact, Ongoing Research, and Speculation

Supported by evidence in my study:

Historical data on fashion MSMEs in Bandung Regency can be used to predict revenue.
A model that understands time order (LSTM) outperformed conventional algorithms on this data.
LSTM-FCN was the best hybrid variant of the 10 I tested, in both accuracy and speed.
Predictions can be translated into business categories and suggested interventions in a working prototype.

Still needs research:

Whether the same results hold in other sectors (food, crafts, services) and other regions.
Whether external factors such as inflation, seasonality, and market trends improve accuracy.
Whether the system's recommendations actually make businesses grow compared with the old way. This requires field trials and long-term evaluation.
How well the model works on businesses with incomplete data.

Still speculative:

A system that automatically decides programs without human involvement.
Fully personalized recommendations for each business owner.
The assumption that high accuracy on historical data necessarily means real-world impact.

Imagining the third category is not wrong. Speculation helps us see direction. What matters is not confusing possibility with established fact, and I try to hold myself to that standard here.

Ethical Considerations and Caution

Data bias. About 28% of the initial data (3,885 down to 2,789) was dropped for being incomplete. If the businesses with incomplete data are precisely those furthest behind, they are the ones most likely to be missed by the system. This is a real limitation of my approach.

Accuracy is not truth. Even with a high R², prediction errors in rupiah can still be large for particular businesses. Predictions should serve as a support tool, not a replacement for the judgment of officers and mentors who know the business.

Labels that stick. Classifying a business as "At Risk" can help, but it can also become a stamp that shapes how that business is treated. Categories should be read as reasons to help, not reasons to set aside.

Transparency. Deep learning models struggle to explain the reasoning behind each prediction. For public policy, users need to be able to explain why a business falls into a given category.

Privacy. Financial and business data is sensitive. Who may access it, and for what purpose, needs to be defined from the start.

Data literacy. Even the best system will mislead if its results are misunderstood. Users need training to read predictions as estimates, not certainties.

Directions for Development

From these limitations, the next steps seem fairly clear to me. Data should be extended to other sectors and regions and collected more carefully from the outset. External factors can be added to make predictions more grounded. The model can be retrained every year to track current conditions. Finally, the prototype needs to be tested together with the office, mentors, and business communities, then evaluated for long-term impact, not just accuracy.

Conclusion

Long before any recommendation system existed, every cooperatives office already held something valuable: records of the journeys of thousands of small businesses. Until now those records have been more often an archive than a basis for decisions. My research suggests that with the right model, the archive can be read as a story in motion: who is rising, who is starting to wobble, and which programs might help them most.

We are not there yet. My system has not been tested in the field, has not been shown to change the fate of a single business, and its data is still limited to one sector in one regency. But the direction is becoming visible: data is gathered, machines learn to recognize its patterns, and people use the results to decide better.

So the more important question may not be "can a machine determine programs for MSMEs?" but rather: how far can offices, mentors, and business owners learn together from the data they already have?

zZ
0:000:00