COVID-19 has changed behaviors of individuals as consumers, employees, or business owners in many aspects. Due to the concerns of public health from COVID-19, most governments have imposed measures to limit the spread this virus to their citizens, such as state and community-level lock down in the U.S, contact-tracing in S. Korea, national level lown down in Newzealand. These measures and fears of COVID-19 among consumers have changed the ways of consumers spend and consequence on local business owners (e.g., Argente et al., 2020 and Baker et al., 2020). S. Korea is not an execption. The overall economy of S. Korea are negatively affected by COVID-19 (Kirk, 2020), and even small business owners (Shin, 2020).
To alleviate this economic hardship on individuals and local business owners, the Ministry of Interior and Safety of S. Korea, and metroplitian city and state governments have launched stimulus payment programs to provide funds to all households (by the centerl government) or targeted housholds (local governments) under which the payments can only be used to specific stores and sectors.
This paper empirically estimate the effect of these stimulus payments and spillover effects on local business owners.
This paper is unique in three aspects. First, even though there is growning literature that have examined changes of consumer behaviors and the effect of stimulus payments on consumer behaviors during the pandemic or idosycratic shocks in the US, this paper would be one of the firs papers that captures comprehensive payements (covering 99.5% of the households in S. Korea) targeting for local small business (excluding big gerocery marts, online shoppoing malles, and etc.).
Second, using consumer spendings at local markets in Seoul, a metroploitan city, we measure the spillover of the changes in consumer spending on restaurants, at leaset at some aggregated levels.
[I am not sure if the following is possible] Third, with some assumptions on average consumption behaviors, we use a structure model of the demand for eating out.
Korean governement and Seoul Metropolitan Goverment have provided stimulus payments to most citizens in Seoul, Korea.
Unlike the stimulus payments in the U.S. (initiated by the 2020 CARES act), these stimulus payments target on the increase of consumption and its spillover effects on small business owners. There are several restrictions on the usage of these stimulus payments. These restrictiion will be discussed below.
The officeical name of this stimulus payment is “Korean Emergency Relief Funds.” This is a primalry focus.
The Korean Government provides emergency relief funds to almost all households in S. Korea (99.5% of households).
Application for the stimulus payments by Korean governement were open from May 11 to June 5, 2020. Once applicants receives their payments, they were able to use the funds by the end of August. After then, unused funds would be donated to other subsidy programs for those who are in hardship during the period of COVID-19.
Depending on the number of the members of households, the amount of the payments varies.
Number of Members in Household | 1 | 2 | 3 | 4 |
---|---|---|---|---|
Amount (KRW) | 400,000 | 600,000 | 800,000 | 1,000,000 |
Amount (USD) | 348.74 | 523.10 | 697.47 | 871.84 |
Two forms of the KG stimulus payments are provided
Gift certification: Local stores under the network of Zero Payment, the payment flotform that provides low expensices related to credit card transaction, mostly helping local small business owners. If individiuals choose this options, they will receive addition 10% of the funds that they receive.
Debit/Credit Cards: Most credit card firms provide stimulus payments to applicants’ credit cards or debit cards.
Pre-paid Credit cards: Applicants visits local community service centers and apply for this types of KG stimulus payments.
Even though the restrictions on the usage of KG stimulus payments vary on the forms of the payments, all the forms of the stimulus payements follows the following restriction:
Sectors | Brands or Examples | Equvalant in the U.S |
---|---|---|
Supermarket | Homeplus, Emart | Stop & Shop, Walmarket |
Department | Lottee, Hyundai | Marcy’s, Nordstorm |
Online Transaction | Online shopingmall, Food delivery apps | Amazon, Uber Eat |
Electroincs | HiMart, Samsung Digital Plaza | Best Buy |
Entertainment | entertainment establishment | Clubs |
Face-to-Face Service | Message, face-to-face service | Message, Nail Salon |
Leisure | Golf, Golf practice, Screen golf, singing room | Golf, Mini Golf |
Gaming | Casino, Lottery, Game Room | Casino, Lottery, Game room |
Gift Certificate | Gift certificate store | |
Jewerly | Jewerly | Jewerly |
Tax and Fees | Governement, local tax, fees | governement, local tax, fees |
Duty Free | Duty free stores | Duty free stores |
Insurance | Life, National Pension, Health, Auto | Life, National Pension, Health, Auto |
Auto-Transfer | Pubic Tranfortation, Telecommunication, other auto-transfer | Pubic Tranfortation, Telecommunication, other auto-transfer |
Others | Adults, Gun Shop | Adults, Gun Shop |
Seoul Metroplitan Government provided stimulus payments for qualifying households in Seoul. The office name of this payment is “Seoul Metropolitan Government Emergency DisasterRelief Fund.”
Households whose annual incomse lower 100 % of the standard median incomes, the standard income that the Ministry of Health and Welfare sets up annually as a standard for welfare programs in Korea.
Number of Members in Household | 1 | 2 | 3 | 4 | 5 | 6 |
---|---|---|---|---|---|---|
Monthly Income (KRW) | 1,757,194 | 2,991,980 | 3,870,577 | 4,749,174 | 5,627,771 | 6,506,368 |
Monthly Income (USD) | 1531.99 | 2608.53 | 3374.52 | 4140.52 | 4906.51 | 5672.51 |
The application period for Seoul stimulus payment was from March 11 to May 15, 2020. The experation date is August 30, 2020.
Number of Members in Household | 1~2 | 3~4 | over 5 |
---|---|---|---|
Amount (KRW) | 300,000 | 400,000 | 500,000 |
Amount (USD) | 261.55 | 348.74 | 435.92 |
Two forms of this stimulus payments are 1) gift certificates, and 2) pre-paid credit cards. The details of those forms are the same as the above.
The same restrictions are applied to Seoul stimulus payments. One additional restriction is that individuals can only use their payments at relevant stores in Seoul.
This paper uses discrete choice models to analyze how stimulus payments during COVID-19 changes consumer behavior, related to eating out (either in stores or take-outs). The availability of data sets makes series of assumptions:
Check per one household: Resturant sales are measured by combined all checks related to credit card and cash transaction. It is possible that multiple individuals or households appear on a check. However, given the data sets, I cannot capture this.
Sales per check: Even though sales per check vary with bundles of food and drinks ordered, this measures how much consumer spend aaverage spending per transaction (per visit). In addition, this measure is widely used in the restaurant industry to measure consumer spending along with another measure, sales per cover (total sales dividied by the number of consumers at the resturants). This can be used as average prices for each resturant category.
We use the logit model to capture consumer decision to buy a restaurant meal. A baseline model is the following (Model 2) - Consumer \(i\) choose \(j (j=1, \cdots, J)\) at market \(m (m=1, \cdot, M)\) at time \(t(t=1,\cdots, 14)\):
\[ u_{ij}^{mt} = \alpha p_{j}^mt + X_{j}^{mt} \beta + \beta_y Y^{mt} + \xi_{j}^{mt} + \epsilon_{ij}^{mt} \]
where * \(p_j^{mt}\): Average spendings per check in restaurant category \(j\) * \(X_j\) includes the number of restuants for the restaurant category * \(Y^{mt}\) : the median incomes at the market level * \(\xi_j\): the unobserved product chacteristics for \(j\) * \(\epsilon\): the demand shock; it follows the Type I extreme value distribution.
To see how stimulus payments affect consumer behavior, we use a specification of \(y\) :
\[ Y^{mt} = y^{mt} + D_{sp}^mt \cdot sp \]
where \(y_{mt}\) represents the aveage income in market \(m\) at time \(t\), \(D_s\) is an indicator variables for stimulus payments, and \(sp\) is the average stimulus payments.
The average stimulus payments could be differ on consumers’ income(Seould stimulus payments target for those whose income is below the standard median income. We will add additional specification on income later.
Using Model 1, I crete alternative specifications:
Model 2: \[ u_{ij}^{mt} = \alpha \frac{p_{j}^mt}{Y^{mt}} + \beta X_{j}^{mt} + \beta_y Y^{mt} + \xi_{j}^{mt} + \epsilon_{ij}^{mt} \]
Model 3: Nest Logit \[ u_{ij}^{mt} = \alpha \frac{p_{j}^mt}{Y^{mt}} + \beta X_{j}^{mt} + \beta_y Y^{mt} + \xi_{j}^{mt} + (1-\sigma)\epsilon_{ij}^{mt} \]
Model 4: Random Coefficients
\[ u_{ij}^{mt} = \alpha_i p_{j}^mt + \beta X_{j}^{mt} + \xi_{j}^{mt} + \epsilon_{ij}^{mt} \]
where \(\alpha_i = \alpha + \sigma Y_i^{mt}\) and \(Y_i^{mt}\) follows the normal distribution.
Another effect of the stimulus payments is to help local business owners. This is indirect effects resulting from the increase in consumer spending due to the stimulus payments. To estimate the effect on local business owners, we can use either discrete choice models that captures the probility of exit or entry/exit models that consider an agent decision as well as other players’ decision (discrete games)).
To use the discrete choice model, we need to have infomation of individual owners’ decisions of exit from the market. However, this information is not available in our current data sets. Additional data collection would be required.
For entry/exit games(strategic interactions), we would use the early models of entry/exit models: Bresinhan and Ressis (1991, 1994) or Seim (2006). Since all firm information is aggregated to the restaurant category, it would be easier to start with the model of Bresnahan and Ressis (1991). With this model, we will estimate entry threshold.
However, except the Bresinhan and Ressis model, the information of entry/exit at the firm level is necessary. Thus, additional information will be needed.
The following website shows the information of available variables and their definition in Korean and English: Variable Description
The following table shows variables related to estimated income and expeditures.
Variable Names | Description |
---|---|
MT_AVRG_INCOME_AMT | Monthly average income |
INCOME_SCTN_CD | Income catergory code |
EXPNDTR_TOTAMT | Total expenditure |
FDSTFFS_EXPNDTR_TOTAMT | Grocery expenditure |
CLTHS_FTWR_EXPNDTR_TOTAMT | Clothing shoes expenditure |
LVSPL_EXPNDTR_TOTAMT | Living expenditure |
MCP_EXPNDTR_TOTAMT | Medical expenditure |
TRNSPORT_EXPNDTR_TOTAMT | Transportation expenditure |
LSR_EXPNDTR_TOTAMT | Leisure expenditure |
CLTUR_EXPNDTR_TOTAMT | Culture expenditure |
EDC_EXPNDTR_TOTAMT | Education expenditure |
PLESR_EXPNDTR_TOTAMT | Entertainmalet expenditure |
MT_AVRG_INCOME_AMT: Monthly average household incomes collected by the National Health Insurance Service managing a univerisal health insurance serivice for all Koreans. This is funded by contribution of employees and empolyers, Korean governments and tobaco surcharges. For the contributions, employees contributes 6.67% of their monthly salaries: a half paid by employers and another half debuted from employees’ salaries. If one is not employed, their perimum are determined by their values of real estates.
Since Income information is only available at small markets, we analyze these markets and their consumers.
This information of the number of household is important in estimating the amount of the stimulus payments are tranferred to each households. Since the current data does not include this information, we use the average household information of the districts.
load(file="df_all5.Rdata")
# sum(is.na(df_all5$TOT_HH)) # TOT_HH is the number of the household in "Dong", which is bigger that the market defined in the data set.
df_all5$HHR_1 <- df_all5$HH_1/df_all5$TOT_HH
df_all5$HHR_2 <- df_all5$HH_2/df_all5$TOT_HH
df_all5$HHR_3 <- df_all5$HH_3/df_all5$TOT_HH
df_all5$HHR_4 <- df_all5$HH_4/df_all5$TOT_HH
df_all5$HHR_5 <- with(df_all5, (HH_5+HH_6+HH_7+HH_8+HH_9+HH_10)/TOT_HH)
df_all5$HHR_6 <- with(df_all5, (HH_5+HH_6+HH_7+HH_8+HH_9+HH_10)/TOT_HH)
# Table
table_hhr <- unique(df_all5[, c("TRDAR_CD_NM","HHR_1", "HHR_2", "HHR_3", "HHR_4", "HHR_5")])
table_hhr %>%
ggplot(aes(x=HHR_1)) + geom_histogram() +
labs(title="Distribution of Household with One person",
x="Percentage of One-Person Household", y="Count") +
scale_color_brewer(palette="Dark2")
table_hhr %>%
ggplot(aes(x=HHR_2)) + geom_histogram() +
labs(title="Distribution of Household with Two persons",
x="Percentage of Two-Person Household", y="Count") +
scale_color_brewer(palette="Dark2")
table_hhr %>%
ggplot(aes(x=HHR_3)) + geom_histogram() +
labs(title="Distribution of Household with Three persons",
x="Percentage of Three-Person Household", y="Count") +
scale_color_brewer(palette="Dark2")
table_hhr %>%
ggplot(aes(x=HHR_4)) + geom_histogram() +
labs(title="Distribution of Household with Four or More persons",
x="Percentage of Four-Person Household", y="Count") +
scale_color_brewer(palette="Dark2")
table_hhr %>%
ggplot(aes(x=HHR_5)) + geom_histogram() +
labs(title="Distribution of Household with Four or More persons",
x="Percentage of Five or More Persons Household", y="Count") +
scale_color_brewer(palette="Dark2")
summary(table_hhr[, c("HHR_1", "HHR_2", "HHR_3", "HHR_4", "HHR_5")])
## HHR_1 HHR_2 HHR_3 HHR_4
## Min. :0.0771 Min. :0.1000 Min. :0.0375 Min. :0.02188
## 1st Qu.:0.3604 1st Qu.:0.1951 1st Qu.:0.1407 1st Qu.:0.10220
## Median :0.4337 Median :0.2166 Median :0.1676 Median :0.13341
## Mean :0.4444 Mean :0.2105 Mean :0.1642 Mean :0.13765
## 3rd Qu.:0.5110 3rd Qu.:0.2325 3rd Qu.:0.1919 3rd Qu.:0.16553
## Max. :0.8208 Max. :0.2847 Max. :0.2807 Max. :0.42196
## HHR_5
## Min. :0.006802
## 1st Qu.:0.032865
## Median :0.041740
## Mean :0.043223
## 3rd Qu.:0.052215
## Max. :0.114907
avg_hhr <- as.data.frame(colMeans(table_hhr[, c("HHR_1", "HHR_2", "HHR_3", "HHR_4","HHR_5")]))
colnames(avg_hhr) <- c("Average Percent")
avg_hhr$HHR <- c("One", "Two", "Three", "Four", "Five or More")
avg_hhr <- avg_hhr[, c("HHR", "Average Percent")]
row.names(avg_hhr) <- NULL
avg_hhr
## HHR Average Percent
## 1 One 0.44443378
## 2 Two 0.21046482
## 3 Three 0.16422473
## 4 Four 0.13765393
## 5 Five or More 0.04322274
Since most decisions related to distributing stimulus payments are based on the monthly income in Feburary, 2020. We use the incomes of Feburary, 2020, as reference incomes: the income of the first quarter of 2020.
# summary(df_all5$MT_AVRG_INCOME_AMT)
table_income <- unique(df_all5[, c("STDR_YY_CD", "STDR_QU_CD", "TRDAR_CD_NM", "MT_AVRG_INCOME_AMT")])
table_income$time.id <- table_income %>% group_indices(STDR_YY_CD, STDR_QU_CD)
df.income <- table_income %>%
group_by(STDR_YY_CD, STDR_QU_CD, time.id) %>%
summarize(mean = mean(MT_AVRG_INCOME_AMT*0.001)) %>%
mutate(time = paste0(STDR_YY_CD-2000, "Q", STDR_QU_CD))
ggplot(df.income, aes(x=as.factor(time) , y=mean, group=1)) +
geom_line() +
labs(title="Change in Avereage Montly Income", x="Time",
y="Average Montly Income (KWN, 1000s)",
caption ="Staring July 3, 2018, employees should join the National Health Insurance if they work more than 8 days(60 hours) per month.") +
theme( plot.caption = element_text(hjust=0, size=9),
plot.caption.position = "plot")
table_income %>%
filter(STDR_YY_CD==2020, STDR_QU_CD==1) %>%
ggplot(aes(x=MT_AVRG_INCOME_AMT*0.001)) + geom_histogram() +
geom_vline(xintercept = 3086, linetype="dotted",
color = "blue") +
geom_vline(xintercept = 2992, linetype="dotted", color="red")+
geom_text(aes(x=3500, y=100, label="Means of Income = 3,086"), colour="blue",
vjust= 1.2, angle=0, size=3) +
geom_text(aes(x=3500, y=110, label="Standard Median Income = 2,992"), colour="red",
vjust= 1.2, angle=0, size=3) +
labs(title="Distribution of Montly Income in 2020 at the Market Level", x="Monthly Income", y="No. of Markets",
caption ="Average household size is 2.082; The standard median income (red) is based on two-person households.")
While the nation stimulus payments are transferred to all Koreans, regardless of their incomes, Seoul stimulus payments are provided to those who are qualified: household incomes are below the standard median income set by the Korean governement.
To estimate appropriate amounts of Seoul stimulus payments provided to qualified individuals, we need to know about the distribution of the montly incomes. The current data only gives the average montly income. To obtain estimated distributions of household incomes, we need addtional information of standard deviation and skewness of this distribution since most income distributions tend to be positively skewed.
According to a report by Shinhan Bank, one of the five biggest banks in South Korea, in 2018 the ratio of standard deviation to average in household income in Seoul (Standard Deviation / Mean) is 1.38.(Standard Deviation to Average in Seoul: 1.38). Using this ratio, we could calculate means and standard deviations for each market and create a normal distribution. Since the standard deviations are great than the means, there are many observations whose incomes are less than zero. addtional information or theories is needed to estimate the distribution of the income.
For example, we might need to create the income distribution as the following graph.
xbar <- 200
xsd <- 200 *1.38
hist(rnorm(200, mean=xbar, sd=xsd))
# skewness = 3, kutyosis = 20
library(PearsonDS)
moments <- c(mean = 200,variance = xsd^2,skewness = 3, kurtosis = 20)
eg <- rpearson(200, moments = moments)
hist(eg)
## Sales Data The informatio of the sales in our data set is approximated sales based on three major credit card firms: KB, SH, and BC. Using the weights of markets and resturant categories, the estimated sales are obtained.
Even though some parts of cash transaction and Zero Payment, the gift certificate form of the stimulus payment, are considered as in the weights, it is not clear that all transactions of these two payment types are included since the estimated sales are based on the credit card transaction.
We use average sales per ticket, the amount of money used for each transaction. In order to use the average sales per ticket as an alternative of prices, this should be consistent over time. The following figures show that the average sales per ticket are consistent for all restaurant categories, except Pre-Cook Meal.
# Average sales per category
df_all5 %>%
group_by(STDR_YY_CD, STDR_QU_CD, SVC_DES) %>%
summarize(avg.sales = mean(THSMON_SELNG_AMT, na.rm = T)) %>%
mutate(time = paste0(STDR_YY_CD-2000, "Q", STDR_QU_CD)) %>%
ggplot(aes(x=as.factor(time), y=avg.sales/10000/3, group=SVC_DES, color=SVC_DES)) +
geom_line() +
labs(title="Aggregate Monthly Sales Per Category", y="Sales Per Categories")
# Average sales per store per catergory
df_all5 %>%
group_by(STDR_YY_CD, STDR_QU_CD, SVC_DES) %>%
summarize(avg.sales = mean(THSMON_SELNG_AMT, na.rm = T)) %>%
mutate(time = paste0(STDR_YY_CD-2000, "Q", STDR_QU_CD)) %>%
ggplot(aes(x=as.factor(time), y=avg.sales/10000/3, group=SVC_DES, color=SVC_DES)) +
geom_line() +
labs(title="Aggregate Monthly Sales Per Category", y="Sales Per Categories")
# Sales per ticket
df_all5$sales.ticket <- with(df_all5, THSMON_SELNG_AMT/THSMON_SELNG_CO)
df_all5 %>%
group_by(STDR_YY_CD, STDR_QU_CD, SVC_DES) %>%
summarize(avg.sales.ticket = mean(sales.ticket, na.rm = T)) %>%
mutate(time = paste0(STDR_YY_CD-2000, "Q", STDR_QU_CD)) %>%
ggplot(aes(x=as.factor(time), y=avg.sales.ticket/10000/3, group=SVC_DES, color=SVC_DES)) +
geom_line() +
labs(title="Aggregate Monthly Sales Per Ticket",
y="Sales Per Tickets", x="Time", color="Restaurant Category")
Sales Amount Per time period
Sales counts(Tickets)
# Sales
summary(df_all5$THSMON_SELNG_AMT)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 1.190e+02 4.481e+07 1.303e+08 3.260e+08 3.659e+08 1.815e+10 46186
summary(df_all5$TMZON_00_06_SELNG_AMT)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## -21471 0 2049784 27192042 23801559 2584930149 46186
summary(df_all5$TMZON_06_11_SELNG_AMT)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## -26775477 0 1473462 19934579 16095443 5317563946 46186
summary(df_all5$TMZON_11_14_SELNG_AMT)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## -4834906 3798456 21906780 63555147 67260835 6649092044 46186
summary(df_all5$TMZON_14_17_SELNG_AMT)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## -4421861 3769524 14988892 38953489 45487996 7086169302 46186
summary(df_all5$TMZON_17_21_SELNG_AMT)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## -7734606 13224585 40394108 107935256 111145610 8566333243 46186
summary(df_all5$TMZON_21_24_SELNG_AMT)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 0.000e+00 3.258e+06 1.970e+07 6.843e+07 7.397e+07 4.954e+09 46186
# No. of ticketes
summary(df_all5$THSMON_SELNG_CO)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 1 2411 7420 24514 24783 773249 46186
summary(df_all5$TMZON_00_06_SELNG_CO)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## -6 0 66 2069 848 154798 46186
summary(df_all5$TMZON_06_11_SELNG_CO)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## -25 0 98 2981 1622 152588 46186
summary(df_all5$TMZON_11_14_SELNG_CO)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## -5 243 1720 5141 5981 242656 46186
summary(df_all5$TMZON_14_17_SELNG_CO)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## -10 224 1027 3596 3850 197177 46186
summary(df_all5$TMZON_17_21_SELNG_CO)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 0 731 2375 6768 7413 215846 46186
summary(df_all5$TMZON_21_24_SELNG_CO)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## -1 165 865 3960 3323 161272 46186
The information of sales and stores are aggregated to the restaurant category at the market level. For example, the sum of the sales of all Korean restaurants are available, while that of individual restaturents in this category is not available.
The informatio of the income distribution at the market level is important so that we can calculate how much stimulus payments are transferred to in