2025-09-29

Background and Problem

Final Fantasy XIV (FF14) is an online game where players buy and sell equipment, medicine, furniture, and more using an in-game currency called gil. Because FF14 is a virtual marketplace, we need to analyze it with a bit of caution.

  • Barring the binary state of an item being “high quality”, every good in FF14 is identical. Identical goods suggest that, in economic terms, it is appropriate to treat each good as a commodity.
  • Each FF14 player is equally empowered to produce any given good, the market is in a state of perfect competition.

How then, does one price a commodity in a perfect competition market? What statistical tools are available to predict market trends?

Data Source

Every FF14 market board transaction is logged and subsequently aggregated by the third-party tool Universalis. As a result, there exists quite exhaustive transaction data for any given good. With essentially perfect information, this data is an excellent jumping off point for market analysis.

In-game transaction history for the *Cunning Craftsman's Tisane* medicine

In-game transaction history for the Cunning Craftsman’s Tisane medicine

Data Structure

A Universalis transaction consists of a timestamp, a price per unit (gil), a quantity purchased, and whether or not the item purchased was high quality.

head(tisane_malboro_7_0_now$entries)
##      hq pricePerUnit quantity  timestamp
## 1 FALSE         1199        1 1759068195
## 2 FALSE         1199        1 1759068193
## 3 FALSE         1198        3 1759068191
## 4 FALSE         1197        1 1759068190
## 5 FALSE         1196        1 1759068189
## 6 FALSE          880        3 1759068187

The dataset has outliers, entries where the price paid was dramatically different than expected. Moving forward, analysis will be focused on data where price per unit is within ±2\(\sigma\) standard deviations.

Initial Analysis

A rudimentary arithmetic analysis of our dataset indicates that the average price per unit of a high quality cunning craftsman’s tisane is 3,865 gil and the median price is 2,694 gil. Even after removing outliers, the average price is nearly 50% higher than the median, suggesting that there are other factors at play.

##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##      69    2239    2694    3865    5399   11055

Quantitative Analysis

Plotting the data in a histogram shows that the normal quality tisane has a very consistent skew to the right. While the high quality tisane also has a rightward skew, its tail is significantly noisier.

Temporal Analysis

To deduce why the histogram of the high quality tisane transactions was so noisy, I’ll next analyze this data temporally. And, as this graph shows, doing so reveals dramatic bumps in sale price occurring periodically.

Game Updates

To understand these price fluctuations requires further background information. As an online game, the developers of FF14 release game updates periodically. These updates add new content for the players to explore. In doing this new content, the players consume more medicines, like the cunning craftsman’s tisane, and demand for this commodity increases.

Demand

Per the supply and demand curve, price goes up when demand increases and supply stays the same. The demand demonstrated in our data supports this, corresponding to an uptick in prices.

Update 7.3 sticks out as having a surge in demand but no surge in price. This is down to supply. In the 133 days after update 7.2 but before update 7.3, 51197 tisanes were sold. In the 54 days since update 7.3, 41847 tisanes were sold. 82% of the volume in 41% of the time.

Statistical Analysis

One method for price forecasting is using a regression model. Applying a generalized additive regression model to our sales data results in a mostly accurate predictor line for price per unit. Though, of note, around February of 2025 the predictor is around half the price of our sales data at that point. This regression model puts our market price around 1,900 gil.

Moving Averages

Another method for price forecasting is using a moving average. By utilizing different windows of time and different averaging methods, a moving average can respond to market trends. In the below graph, the averages with larger windows are able to respond quicker to upward market trends. The models agree that the price is around 1,900 gil.

Conclusion

  • Data mean price: 3,865 gil
  • Data median price: 2,694 gil
  • Regression and moving average prices: Around 1,900 gil

What should this commodity be priced at? Economics tells us that in a perfect competition market, there is no profit to be had. Our average and median prices are influenced by profit. But our statistics are looking at the data through a narrower viewpoint. This means that our statistics are more likely to be correct, placing the value around 1,900 gil.