On Optimal Pricing of Services in On-demand Platforms

03/19/2018 ∙ by Vijay Kamble, et al. ∙ University of Illinois at Chicago 0

I consider the optimal hourly (or per-unit-time in general) pricing problem faced by a freelance worker (or a service provider) on an on-demand service platform. Service requests arriving while the worker is busy are lost forever. Thus, the optimal hourly prices need to capture the average hourly opportunity costs incurred by accepting jobs. Due to potential asymmetries in these costs, price discrimination across jobs based on duration, characteristics of the arrival process, etc., may be necessary for optimality, even if the customers' hourly willingness to pay is identically distributed. I first establish that such price discrimination is not necessary if the customer arrival process is Poisson: in this case, the optimal policy charges an identical hourly rate for all jobs. This result holds even if the earnings are discounted over time. I then consider the case where the customers belong to different classes that are differentiated in their willingness to pay. I present a simple and practical iterative procedure to compute the optimal prices in this case under standard regularity assumptions on the distributions of customer valuations.



There are no comments yet.


page 1

page 2

page 3

page 4

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

1 Introduction

The recent years have seen an exponential rise of the so called “gig economy”, broadly consisting of online and in-person work relationships that are facilitated “on-demand” or “just-in-time” by online platforms (De Stefano 2015). While this paradigm has ushered in new opportunities for flexible employment in the economy, navigating the uncertainties associated with short-term contractual work can be daunting. This paper is motivated by the goal of empowering workers and service providers on these platforms to take effective operational decisions in these complex and uncertain settings.

In particular, this paper is concerned with the revenue management challenges faced by workers on platforms where they individually make their own pricing decisions. Examples include platforms that match semi-skilled or skilled labor to tasks of heterogeneous nature, like Upwork, Taskrabbit, or Thumbtack, but do not include ride-sharing platforms like Uber and Lyft, where the pricing is centrally regulated by the platform. These latter pricing decisions have received considerable attention from an operational perspective in recent literature (e.g., Banerjee et al. 2015, Bimpikis et al. 2019, Taylor 2018, Cachon et al. 2017, Castillo et al. 2017). However, despite the presence of several blogs and online forums that informally and anecdotally discuss various aspects of the issue of freelancer pricing,111A web search for “freelancer pricing strategies” returns hundreds of entries on the topic. it has received little formal attention from the scientific community. To a large extent, similar revenue management challenges are faced by service providers on online rental marketplaces like Airbnb for lodgings, Turo or Getaround for cars, etc.

In this paper, I consider the central problem faced by a worker on an on-demand service platform, which is that of optimally pricing her services to maximize earnings. Because of uncertainty and heterogeneity in the job durations, workers typically use per-unit-time pricing (e.g., hourly), which allows the the payment to scale linearly with the duration of a job.222Such pricing is standard not only on on-demand labor platforms like Upwork, Taskrabbit, and Thumbtack (hourly), but also on rental marketplaces like Airbnb (per-night) or Turo/Getaround (hourly). Consequently, the focus is on such per-unit-time pricing strategies (I discuss the relation to per job pricing in Section 6).

A key feature of the on-demand service economy is that there are no “per worker” queues: if a particular worker is unavailable, the customer simply chooses some other worker or leaves the platform. Hence, from the perspective of a worker, accepting a job incurs an opportunity cost of losing all the jobs that could have been accepted while the worker is busy. The optimal price per-unit-time for a job thus needs to internalize the per-unit-time opportunity cost, which is the ratio of the expected earnings lost due to accepting the job and the expected duration of the job.

The first contribution of this paper is to highlight that, depending on system characteristics and class specific features like distributions of the job durations, particulars of the arrival processes, etc., there could be an asymmetry in the per-unit-time opportunity costs incurred by different classes of jobs. And in these cases, price discrimination across these classes may be necessary to maximize earnings even if there is no difference in the beliefs about the customers’ per-unit-time willingness to pay. The following example is a bit contrived, but it nevertheless illustrates this point. More examples of practical interest will be presented in Section 3.

Example. Consider two types of customers: type A customers bring a job of length hour and type B customers bring a job of length

hours. The willingness to pay per hour for each customer type is uniformly distributed in

. Type customers arrive at times and type B customers arrive at times . Now, accepting a job of type does not incur any opportunity cost since it will be finished in time to be able to accept the next job. Thus the optimal hourly price for this job can be independently computed to be per hour. On the other hand, accepting a customer of type does incur an opportunity cost: the next arriving customer of type cannot be accepted. This necessitates a reserve value on the hourly price for job type resulting from the requirement that the total earning from the job is at least as much as the optimal expected earning from the type job that would be lost. Consequently, the optimal hourly price for job type is higher than .

The second contribution of this paper is to establish that if the customers’ arrival process is Poisson, and if their per-unit-time valuations are drawn from an identical distribution, the optimal pricing strategy that maximizes the long-run average earning charges a single rate for all jobs. In other words, in this case, the per-unit-time opportunity costs are identical across jobs irrespective of their durations. Discounting earnings over time, i.e., giving more importance to the earnings obtained earlier, does not affect this result. Hence, any price discrimination must result from differences in the distributions of the customers’ willingness to pay.

I present this particular finding with some hesitancy, since once the question is appropriately formalized, the result is mathematically trivial. However, it may not be quite as obvious, and could provide useful guidance to workers and service providers as they undertake their pricing decisions. For example, the desire to improve capacity utilization in the face of arrival uncertainty may tempt a worker to prioritize longer jobs by offering them a lower hourly price as compared to jobs that are expected to be relatively short, even if the customers’ hourly willingness to pay is believed to be identically distributed across jobs.333For instance, price discounts for longer stays are commonly observed on rental marketplaces like Airbnb. This temptation may be stronger if the worker is time sensitive and wishes to maximize discounted earnings. The result implies that such intuition is unfounded.

This brings us to the third contribution of the paper. Under the same setting of Poisson arrivals, I consider the problem of choosing the optimal set of prices for multiple customer classes that are differentiated in their per-unit-time willingness to pay. I present key structural insights into the optimal prices in this case, finally culminating in a practically attractive iterative procedure that converges to these prices under standard regularity assumptions on the distribution of customer valuations.

The analysis hinges on the observation that the per-unit-time opportunity cost of accepting a job from any customer class is in fact the optimal earning rate. If this rate is known, then the optimal pricing problem decomposes across classes into a set of independent optimal pricing decisions with a reserve price equal to the optimal earning rate. Effectively, these are basic optimal product pricing decisions. Since the optimal rate is not known, a natural iterative scheme for a worker is to start with a guess for the optimal earning rate, compute the optimal prices independently for each customer class, estimate the resulting earning rate, recompute the optimal prices, and so on. I show that under the regularity assumptions on the distribution of valuations, this procedure indeed converges to the set of optimal prices and the optimal earning rate.

Finally, I discuss the issue of worker competition on these platforms. I show that with undifferentiated workers, an equilibrium vector of prices typically fails to exist. But for workers that are differentiated by their quality (as signaled by their ratings on these platforms, for instance), I propose a natural customer behavior model under which a price equilibrium exists, and can be efficiently computed. Under this model, that I term “Best-I-can-afford” (BICA), each arriving customer chooses the highest quality available worker that she can afford. Under this model, I show that the workers can hierarchically solve monopolistic optimal pricing problems to arrive at the price equilibrium. This in particular implies that all the structural insights into the optimal pricing problem under the monopolistic setting carry over to the competitive setting from the perspective of any single worker.

The paper is organized as follows. I discuss relevant literature in the remainder of this section. In Section 2, I present the model and the result on the optimality of a single hourly price with statistically identical customers and Poisson arrivals. In Section 3, I discuss examples of certain related settings where this prior result doesn’t hold. In Section 4, I consider the case with multiple customer classes, where I analyze the structure of the optimal prices and finally present the iterative algorithm for computing these prices. In Section 5, I consider the issue of worker competition. In Section 6, I end the paper with a discussion of possible extensions of the formulation, its applicability to practical settings, and possible future directions.

1.1 Related work

Platform pricing in two-sided markets has received considerable attention in literature. Rochet and Tirole (2003) pioneered the study of monopolistic pricing in such platforms; see also Rochet and Tirole (2006). This analysis was later generalized and extended to multi-sided platforms in Weyl (2010). Caillaud and Jullien (2003) and Armstrong (2006) additionally consider competition across platforms. These works abstract away the operational details of interactions on these platforms and exogenously specify how utilities of entities depend on the number of entities on the other side due to network effects. The focus is on traditional microeconomic questions like the impact of governance structures on the efficiency of market outcomes, whether and how prices internalize network effects, the impact of the agents’ ability to multi-home, the impact of subscription based vs. transaction based pricing, etc. Bakos and Katsamakas (2008) considers the impact of investments into modulating the strength of network effects along with pricing decisions. Later works analyze the design of pricing and fee structures in two-sided market platforms while explicitly modeling their impact on the buyer/seller incentives and the resulting competitive equilibrium prices for trading that emerge on the platform. Works in this spirit include Economides and Katsamakas (2006), Lin et al. (2011), and more recently, Birge et al. (2018). These works assume a large market model with a continuum of entities transacting, due to which, a) price-taking behavior and competitive equilibrium emerge as natural determinants of trading prices, and b) distinction between products and services disappears.

In contrast to the platform perspective espoused in these works, the present paper focuses instead on the optimal pricing problem from the perspective of workers operating on labor platforms, while assuming the fees charged by the platforms as fixed. Moreover, in modeling competition, I assume a fixed and finite set of workers displaying fully strategic behavior in setting prices as opposed to assuming that workers are price-taking and their supply can be modulated by market prices. Because of this, the randomness inherent to the service aspect of the transactions cannot be neglected in the model, and in fact, it plays a crucial role in the analysis.

As mentioned in the introduction, the decentralized nature of these pricing decisions for trades on the platform is different from the centralized pricing seen in ride-sharing platforms and analyzed in several recent works; c.f. Banerjee et al. (2015), Bimpikis et al. (2019), Cachon et al. (2017), Castillo et al. (2017). Another important distinction in these works is the spatial nature of demand and supply, which is not modeled in the present work.

The present work is closely related to the literature on pricing in service systems; see Hassin and Haviv (2003) for a survey. Three works most relevant to the present setting are Ziya et al. (2006), Ziya et al. (2008) and Caro and Simchi-Levi (2012). Ziya et al. (2006) considers the optimal pricing problem faced by a service facility with a single server and a queue with a finite capacity (which could be 0, as in our setting), when the customer valuations are drawn from a common distribution. Both Ziya et al. (2008) and Caro and Simchi-Levi (2012) analyze the case of multiple heterogeneously distributed customer classes in a similar setting. Although these settings are more general, the more focused analysis of the setting without queueing in the present work, motivated by on-demand platforms, results in several novel results and insights that do not hold in the general setting. In particular, the non-discrimination result with identically distributed valuations across customer classes holds only in this setting (as shown in the example in Section 3.1). Similarly, the efficient procedure for computing optimal prices with heterogeneous customers doesn’t necessarily converge in the presence of queues as I show in Remark 4 at the end of Section 4. Additionally, these works do not consider the issue of price competition amongst servers, neither do they consider maximization of discounted earnings as an objective.

2 Homogeneous customers

Consider a single worker on an on-demand service platform. Customers are of types. Let the set of types be denoted as . Service requests to the worker from customers of type arrive according to a Poisson process with the rate of per hour. The durations of the jobs they bring are distributed according to with mean hours. Let denote the load of the customer channel and let denote the total load. Each customer has a maximum price that she is willing to pay per hour, which is drawn independently from a common distribution . Let denote the tail distribution function. The worker chooses an hourly rate for job type . An arriving customer’s job is accepted by the worker only if she is idle and if the customer is willing to pay the hourly rate. While the worker is busy working on the job, all the arriving customers are lost forever (they are assumed to have chosen some other worker on the platform or to have left the platform altogether). While the worker is busy, she accrues a cost of per unit time. The goal of the worker is to choose the prices that maximize her long-run rate of earning.

We first derive an expression for the long-run average earning of the worker as a function of the price vector . Observe that since the arrival process is Poisson, the total earning until time , denoted as , is a renewal reward process where each renewal cycle consists of the worker becoming idle after finishing a job, then accepting the first paying job that arrives (such jobs arrive at the rate for each type ), and then finishing the job. Let be the total earning in the first cycle and let be the length of that cycle. Then from the renewal reward theorem (Gallager 2013), the long-run average earning of the worker as a function of is given by:


Now since the arrival process is Poisson, the expected time till the first paying job arrives in a renewal cycle is . Also, the first paying job that arrives in a renewal cycle is of type

with probability

. Thus we have


We finally get


The following result is the first main finding of the paper. There exists an optimal strategy for the worker that chooses the same hourly price across all customer types.


Proof. Recall that and denote . Then for any price vector , we have,

But the latter is the problem of choosing the single optimal hourly price for all jobs, thus proving the result. Inequality (a) relies on the following argument. Let . Suppose that is a non-negative vector and is a positive vector. Define

and let be the maximizer. Then for any , we have

This implies that for any ,

This inequality is an equality only when . This implies that is the maximizer of . But this implies that if and only if , i.e., if . This implies that for some , which implies that . ∎

2.1 Discounted earnings

In this section, I show that discounting the earnings over time does not affect the previous result. As before, let be the hourly price for job type . Let be the state of the worker at time , beginning from the state . Here, the state signifies that the worker is idle, and state signifies that the worker is busy with a job of type . Then is a continuous time stochastic process that is càdlàg, i.e., its sample paths are right continuous with left limits. Let be the earning rate in state , where and for . Let be the discount factor. Then the total expected discounted reward is given by:



be an exponential random variable with mean

, independent of . Consider a modified stochastic process , defined as by introducing a new absorbing state such that . Clearly, if is càdlàg, then is càdlàg as well. Then it is straightforward to see that is the expected total earning in this modified process, i.e.,


Define , and for , define,


where . Thus, is the expected total earning until absorption starting from the state where a job of type has just been accepted by the worker. For each , let , and let , such that is independent of . We then get the following set of first step equations for computing . First, we have,


where is the probability that the process enters state before absorption. Also, for each , we have,


The first term in the expression on the right is the expected earning after accepting a job until either the job is finished or the process enters the absorbing state. The expected time till either of those two events occur is . The second term results from the fact that the process enters state , i.e., the job gets finished before absorption, with probability . Solving, we get,


Thus, denoting , we finally have,


We now need the following fact. Let and be independent non-negative random variables such that

is exponentially distributed with mean

. Then,


Proof. We have,


Conditioned on the event , has a truncated exponential distribution, and its mean can be computed to be (see Chap. 4, Lemma 4.3 in Olive (2008)),




This, coupled with the fact that implies the result. ∎

Thus, we finally have,


Using the same argument as that in the proof of Theorem 2, it is straightforward to establish that there exists an optimal policy that sets the same hourly price for each customer class. This is the policy that maximizes the long-run average earning given that the total load is , where . For instance, if the job durations are exponentially distributed, then .

3 Related settings

In this section, I take a short detour and present examples to show that Poisson arrivals are not sufficient for the previous result in an arbitrary system.

3.1 Worker specific queues

Consider the case where the customers could be patient, i.e., they are willing to wait for the worker to become free before choosing someone else. This could naturally model traditional freelancing settings where the worker has developed a sustained relationship with a class of customers who prefer her services over other workers. I numerically demonstrate than in these cases, the previous result may not hold, i.e., even under Poisson arrivals, price discrimination may be necessary for optimality despite identically distributed customer preferences.

Suppose that there are two classes of customers, A and B. The hourly willingness to pay of each customer is uniformly distributed in . Customers from class A arrive at the rate of customers per hour and those from B arrive at the rate of customers per hour. The job durations of both classes are exponentially distributed: class A with mean hours and class B with mean hours. Suppose that arriving customers are willing to wait indefinitely if the worker is busy and if they are next in line. If an arriving customer sees another customer waiting, then she leaves the system. In other words, the queue has capacity and customers do not leave without being served once they are in queue.444If the queue has infinite capacity and customers wait indefinitely, then there are no externalities imposed by accepting any job and no price discrimination is necessary if the customers’ per-unit-time willingness to pay is identically distributed.

For a pair of prices and for the two classes, since the arrival process is Poisson, the reward process till any time is a renewal reward process. Each renewal cycle begins with the worker being idle, and ends when the worker finishes a job and there is no customer in queue. The long-run average rate of earning in this case can be computed to be,


The details of this computation can be found in the Appendix. Suppose that we fix and set , so that . In Figure 1, I plot the optimal prices as varies from to and then from to .555The optimal prices were computed using the scipy.optimize package in Python. This allows us to see the effect on the optimal prices of changing the job length of class while keeping the overall load the same as that of class . Observe that when the expected job length of class is larger than that of class (), the optimal price is larger than . The inequality is reversed when , i.e., when class jobs are shorter than class jobs. This suggests that in these cases, the expected opportunity cost doesn’t necessarily grow linearly in the length of the job. Intuitively, when the worker starts working on a job, the rejections of incoming jobs only begin when a new job arrives in the queue. Thus smaller jobs impose relatively smaller externalities per unit time since there is a greater chance that they finish before a new job arrives in the queue.

Figure 1: Optimal prices as a function of .

3.2 A hybrid setting

On a related note to the setting described in the previous section, in platforms where there is a mixture of on-demand and patient customer classes, price discrimination across these classes is typically necessary even if the distribution of the customers’ hourly willingness to pay and arrival/job-duration characteristics are identical. To see this, suppose that there are two classes of customers: On-demand (A) and Patient (B). On-demand customers have to be served immediately, and Patient customers are willing to wait as long as the average waiting time is finite (i.e., the queue doesn’t explode). Moreover, preemption of a Patient job is allowed. Suppose that all job durations are exponentially distributed. The arrival rate and service rate of the On-demand class are . The arrival rate and service rate of the Patient class are and for some small (the choice may seem mysterious but will soon become clear). Suppose that the hourly valuations of the customers are distributed uniformly in .

Now clearly, as long as the effective residual service rate available for the Patient class due to time spent in serving the On-demand class is larger than , the Patient class imposes no externality on the system, since accepting a Patient customer incurs no loss in revenue to the worker. The optimal hourly price for the Patient class can then be computed to be . The question is whether the effective service rate for the Patient class is sufficient. Now, turning to the On-demand class, it is clear that accepting a job imposes an externality on the system. If this was the only class on the platform, then the optimal price is the one that maximizes,

The optimal price can be computed to be . At this price, the long-run fraction of time that the worker is not working on an On-demand job can be computed to be (this is simply the ratio of the expected time until arrival of an On-demand job in a renewal cycle and the expected total length of a renewal cycle). Hence, the effective service rate available for the Patient customers is which is more than . Thus we conclude that the optimal hourly price for the On-demand customers is and that for the Patient customers is .

This example suggests that in a general setup where there exist different classes of customers that are differentiated in their delay tolerance, which can be modeled by their job deadlines, price discrimination may be necessary for optimality despite identically distributed preferences.

3.3 Non-exponential discounting

One can show that price discrimination across customer classes because of differing arrival/duration characteristics may be necessary despite Poisson arrivals if the time discounting is non-exponential. We saw earlier that exponential discounting is equivalent to an exponentially distributed time horizon. Suppose instead that the time horizon is exponentially distributed with rate with probability and with rate with probability . Suppose there are 2 classes of customers, A and B. The arrival rates are . The job durations are exponentially distributed with rates and . Suppose that the hourly prices are and for the two classes. In the event that the time horizon is exponentially distributed with rate , the expected earning can be computed to be,


where and . Thus the expected earnings can be computed to be,


The optimal prices can be computed to be and .666Optimal prices computed using the scipy.optimize package in Python Thus in this case, price discrimination becomes necessary for optimality.

4 Price differentiation with heterogeneous customers

Coming back to the on-demand setting where there are no per-worker queues, it is now clear that under Poisson arrivals, any price differentiation must stem from the fact that the beliefs about the customers’ willingness to pay are different across different classes. In this section, I present structural insights into the optimal prices in this case and finally present a procedure to compute these prices under certain standard assumptions. Let be the distribution of hourly valuations of customers in class , with support on . I assume that each is differentiable on its support (with right and left derivatives defined at and , respectively). Let and denote the corresponding tail distribution functions and densities, respectively. It is straightforward to establish as we did earlier (i.e., the derivation of (2)), that for a price vector , the long-run average earning is given by:


The problem of maximizing the long-run rate of earning is thus defined as:


Let the optimal rate of earning be denoted by . Then for any feasible set of prices , we have that


This expression is an equality if and only if is the vector of optimal prices (which need not be unique). This also implies that the optimal prices are the maximizers of the function . Since this function is separable across the classes, this in turn implies that any optimal price for class , , maximizes . This fact has an intuitive interpretation. The optimal earning rate is indeed the opportunity cost per hour of being busy. Thus, given , one simply solves the optimal pricing problem for each class assuming that the total hourly cost for serving that class is . This is a standard optimal pricing problem in mechanism design; c.f. Myerson (1981).

For a fixed hourly opportunity cost , for each , consider the optimization problem,


The first derivative of the objective function is given by,


Now suppose that the function is strictly increasing in for each ; if this holds we say that each distribution is strictly regular (if is non-decreasing then such a distribution is called regular in mechanism design literature; c.f. Myerson (1981)). For instance, this would hold if has a non-decreasing hazard rate for each , i.e., is non-decreasing (this has been referred to as the Monotone Hazard Rate or Increasing Failure Rate assumption in the mechanism design literature).

If the distributions are strictly regular, the entire function in the parenthesis in equation (20) is increasing. Thus, from the first order optimality condition, we can conclude that the optimal value of that solves (19) is unique: it is if , otherwise it is the unique value of that satisfies . With some abuse of notation, let us denote this optimal value as . It is straightforward to verify that the function defined on is continuous, and moreover differentiable at all points except . Also, both left and right derivatives exist at . Further, for all (the optimal price is non-decreasing in ) and for all . At , we have the left derivative and the right derivative .

Thus, under the strict regularity assumption, we know that the optimal prices are unique and they are . The optimal earning rate is of course, unknown. But we know that satisfies the fixed point relation:


The following result shows that given the regularity assumption, 1) this fixed point is unique, and 2) it is the maximizer of the response function. These two facts are key to obtaining a natural procedure for iteratively computing . Suppose that the distributions are strictly regular for each . Then, there is a unique that satisfies the fixed point relation (21). Moreover, maximizes the function,


Proof. First, note that a fixed point always exists since the optimal earnings and the optimal set of prices define such a fixed point. We first establish that it is unique. It is straightforward to verify that the function defined on is continuous, and differentiable at all points except . Also at these points, both left and right derivatives exist (these properties follow from the corresponding properties of ). Then at any point the right-derivative of can be expressed as,


Here is the right-derivative of at . Let be a fixed point of , i.e., . Then we have,


From the optimality conditions for , we have that . Moreover, if then . Thus for any such that .

This implies that for any , there is an such that for all that satisfy , . For such an , if , then and , while if , then . Thus, . This implies that the function is non-increasing after . Hence, there can be only one fixed point .

Next, we show that maximizes . This is straightforward, since for any , is an achievable revenue rate, achieved by simply using the prices . Hence, .∎

We can now show the following main result of this section. Suppose that the distributions are strictly regular for each . Then starting from any , the sequence obtained by the relation converges to the unique fixed point of . is the optimal rate of earning and the corresponding prices for are the optimal prices.


Proof. Since , for any , we have that for . Moreover, for any . Thus is a monotonically increasing sequence bounded by , and hence converges to some by the monotone convergence theorem. It must be that , since if not, then and hence , which contradicts the fact that is the limit point. ∎

Example. Consider two customer classes with loads . The hourly willingness to pay of class is uniformly distributed in , and that of class is uniformly distributed in . Thus and . Suppose that the hourly cost of service is . For a given hourly reserve price , solves for and for . We thus obtain and .

Thus for , we obtain,

And for , we obtain,

for . The function is plotted in Figure 3, where one can see that its unique fixed point is its maximizer. This is the point . Thus the optimal hourly prices are and . Figure 3 shows the convergence of the iterative procedure to from different starting points. The convergence is quick (the plot shows 5 iterations). Observe that as expected, the output values are no larger than after the first iteration.

Figure 2: The plot of and the line . The fixed point of () is also the maximizer of .
Figure 3: Convergence of the iterative procedure to from different starting points

The above procedure of iteratively estimating the earning rate and using it as the opportunity cost to compute the optimal prices for each customer class doesn’t generally converge to the optimal prices in the presence of queueing, or in any system where price discrimination across classes is necessary despite identically distributed preferences. This can be seen from the example presented in Section 3.1. In that example, despite the customer classes having the identically distributed hourly valuations, I showed that price discrimination was necessary for optimality. But the above procedure can never converge to different prices for the two customer classes, since for any estimated earning rate, the optimal pricing problem solved by the procedure for the two classes in every iteration is identical.

5 Worker competition

A natural question that arises at this point is if any of these insights carry over in the presence of competition. Indeed, in reality, several workers offering the same services operate on any service platform. The traditional revenue management response to this concern would be that the customer arrival rates already factor in everything exogenous to the decisions of the worker in focus; in particular, these are the residual arrival rates after having accounted for the competition. However, such a response is valid only if one assumes that the competitive environment is stable, and that it does not change in response to the prices set by the worker. There is a priori no reason to assume so in our setting. In this section, I offer a rather optimistic resolution of this concern.

First, I start with a basic observation about a setting that I will refer to as uniform workers setting. Suppose that there are workers that offer identical services, which are indistinguishable in terms of dimensions like quality, etc. Moreover, without loss of generality, suppose that their hourly service costs are identical and equal to . Also, suppose that there is a single customer class with Poisson arrivals with rate , and an arbitrary job length distribution with a finite mean . Each customer’s maximum hourly willingness-to-pay is drawn independently from a strictly regular common distribution . Moreover, suppose that each arriving customer, a) chooses the cheapest available worker whose hourly price is lower than her hourly willingness to pay, b) leaves if there is no such worker or if all the workers are unavailable, and c) breaks ties arbitrarily if there are multiple workers that offer the same smallest price. Given a vector of prices chosen by the workers, let be the long-run average revenue of worker for . Recall the definition of Nash equilibrium.

[Nash Equilibrium] We say that the vector of prices is a Nash equilibrium if for all ,

I informally call such a Nash equilibrium vector of prices a price equilibrium. The main observation is that in the uniform workers setting, there exists no price equilibrium. The basic idea is the same as the “Edgeworth Paradox” in economics Fisher (1925). We record this observation in the following proposition.

In the uniform workers setting described above with , there exists no Nash equilibrium vector of prices.


Proof. Suppose that there exists a price equilibrium and without loss of generality, let workers and offer the two smallest prices at equilibrium, . Let be the unique (due to strict regularity of ) monopolistic optimal price when there is a single worker. First, note that it cannot be that , since if so then can lower his price to and make the monopolistic optimal revenue. Also, it cannot be that , since again can raise her price closer to and make a revenue closer to the monopolistic optimal revenue. Thus it must be that . It cannot be that , since can raise her price while still being less than and obtain a higher revenue by inching closer to the monopolistic optimal price of . Thus we have ; but again this cannot be an equilibrium unless , since either or can undercut the other and get a larger share of the market for negligible loss in revenue. But cannot be an equilibrium either since either worker is incentivized to raise the price to capitalize (i.e., earn a positive expected revenue) in the situations where all the other workers are busy and they are the only worker available for the customer. Hence, there is no price equilibrium.

This suggests that amongst undifferentiated workers, there is no hope of obtaining a price equilibrium. However, it is rarely the case that the workers on a platform are undifferentiated – they are typically ranked in order of quality as determined by the reputation systems of the platforms. In this case, I argue that the situation may not be as bleak and a price equilibrium may exist. Consider again the setting where there are classes of customers, with Poisson arrivals (rate ) and arbitrary job length distributions (mean ). Suppose that a class customer’s hourly willingness to pay is drawn independently from the distribution . There are workers, , ranked in descending order of perceived quality, i.e, . Each worker sets a price for a customer of class . I propose the following model for how a customer accounts for price and quality information in making purchase decisions on platforms.

[A best-I-can-afford (BICA) buyer] From the available workers, the customer chooses the highest ranked worker with an hourly price (for her class) less than or equal to her hourly willingness to pay. She leaves if there is no such worker.

I argue that this is a natural model for quality sensitive customer behavior on platforms. For example, for high-value software development jobs on labor platforms like Upwork, clients have predetermined management approved budgets for their hourly expenditures and naturally, they want to get the best available freelancer that meets their budget constraint. Moreover, in cases where customers are not expected to persist on the platform for long, the absolute values of the worker reputation scores may not be very informative beyond the ranking information that they provide and thus, opting for the best ranked worker that one can afford may be perceived to be a safe strategy in the face of quality uncertainty. Finally, the search and filtering abilities provided by platforms naturally support such behavior by making it easy to list products or services in decreasing order of quality scores.

With this model, I argue that not only does a price equilibrium exist, it can be computed efficiently. The idea is simple. Since the highest rated worker 1 gets priority from the customers, she is unaffected by the pricing decisions of the remaining workers. That is, when she is available, she gets priority from all the customers who can afford to pay the price that she sets, irrespective of prices set by other available workers. Thus, she can independently solve the single worker price optimization problem that we solved in Section 4. Once her prices are fixed, she consumes a part of the incoming demand of customers who can afford to pay her prices – not all since a fraction of these customers are rejected service from her because she is busy. The residual demand is thus composed of all the arriving customers who cannot afford to pay the first worker’s prices and a fraction of the customers who are able to but are denied service due to unavailability. The second worker now has priority over these customers and is unaffected by the pricing decisions of the workers who have a lower rating than her. Thus, she again solves the single worker price optimization problem with the residual demand as earlier. Then the third worker sets the optimal prices with the residual demand that is rejected by the first and second workers and so on and so forth, until all the workers have set their prices. We record this observation in the following proposition.

With workers ranked by their quality and BICA buyers, a price equilibrium exists. The above argument also implies the following two points. First, with customers’ hourly willingness to pay identically distributed across multiple classes, price discrimination due to systemic reasons is unnecessary for worker 1, and assuming that worker 1 doesn’t price discriminate, such a price discrimination is unnecessary for worker 2, and so on. Second, if the workers asynchronously implement the algorithm discussed in Section 4, this would lead to each worker converging to the equilibrium price. This is trivial to see for the highest rated worker. But once the highest rated worker’s prices have converged, the second highest rated worker will face a stable environment and her prices will converge, and so on and so forth.

6 Discussion and future directions

Extensions. Below are a couple of extensions that are subsumed by the model.

  1. Hourly vs. per-job pricing. Hourly pricing is equivalent to per-job pricing in terms of maximizing the long-run earnings assuming that a) the mean job duration is commonly known to the worker and the customer, and b) a customer’s per-unit-time valuation is same as her per-job valuation divided by the mean duration. In this case, the optimal per job price is the same as the optimal hourly prices multiplied by the mean duration of the job.

  2. Commissions. Typically, workers have to pay a fixed percentage of their revenue to the platform. In this case, if the worker charges per hour to the customer, her net revenue is for some . In this case, we can simply redefine to be the net revenue rate of the worker coming in from customer class and the probability that an incoming customer is willing to support that rate can be defined to be