Imagine you’re the product manager for Meta (Facebook) Marketplace. Since many sellers don’t mark items as sold, what existing functionality and metrics could you use to determine whether an item has likely sold?

Add Your Answer
Answers (4)

As the product manager for Meta (formerly Facebook) Marketplace, determining whether an item has likely been sold, even when it hasn’t been explicitly marked as sold, is crucial for improving the user experience and providing accurate information to both buyers and sellers. Here are some existing functionality and metrics you could leverage:

  • Messaging Activity: Monitor the messaging activity between the seller and potential buyers. If there has been an increase in messages or a specific pattern of conversation indicating potential negotiations or arrangements, it may suggest that the item has sold or is in the process of being sold.
  • Listing Age: Track the age of a listing. Older listings that haven’t been updated or edited for a while might be more likely to have been sold. You could set a threshold beyond which a listing is automatically marked as “expired” or “likely sold.”
  • View and Engagement Metrics: Analyze the number of views, likes, shares, and comments on a listing. If there’s a sudden surge in these metrics, it could indicate heightened interest or that the item has sold. Additionally, a decrease in engagement over time might suggest that the item is no longer available.
  • Profile Activity: Examine the activity on the seller’s or buyer’s profile. If the seller hasn’t posted any new listings or if the buyer hasn’t engaged with any listings recently, it might indicate that the transaction has been completed.
  • Geo-location Data: Analyze the location of the seller and the interested buyers. If the seller or potential buyers are no longer in proximity to the item’s location, it could be an indicator that the item has sold.
  • Payment Data: If Meta Marketplace integrates with payment processing, you can use transaction or payment data to identify completed sales. However, this would require user consent and privacy considerations.
  • Pattern Recognition and AI: Utilize machine learning and AI algorithms to detect patterns that suggest a sale. These algorithms can analyze various data points, including those mentioned above, and predict the likelihood of an item being sold.
  • Seller Behavior: Analyze the behavior of the seller. If the seller has a history of marking items as sold after a certain period or after a specific engagement threshold, the system could predict the likelihood of an item being sold based on this historical behavior.
  • Buyer Feedback: Consider feedback from buyers. If a buyer provides positive feedback on a seller’s profile, it may indicate a successful transaction.
  • Seller Confirmation: Implement a system where sellers are encouraged to confirm the sale status of their items after a certain period or when they believe the item has been sold. Incentivize sellers to provide this information for a more accurate marketplace.

By combining these existing functionalities and metrics, Meta Marketplace can build a more accurate model for predicting whether an item has likely sold, even when sellers haven’t marked it explicitly. This information can help improve the overall user experience by reducing the visibility of unavailable items and ensuring that listings reflect their current status.

The Marketplace Product: the Marketplace allows people to trade with other people, usually around used stuff.

The problem: Presenting items that are not relevant in the marketplace hurts people that are looking for such items. The response rate might be low, people might be disappointed about a negative response, and it hurts the trust in the Marketplace.

The buyer user journey:

  1. Find something that you are interested in.

  2. Watch imagesvideos and read about the item.

  3. (optional) talk to the person and get additional information. The communication can be done via FB messenger or some other communication channels.

  4. (optional) schedule a meeting to see the item.

  5. Payment

  6. (optional) Delivery

The seller user journey:

  1. Set the product you’re willing to sell (details, classification, images, location, etc. )

  2. (optional) Set additional channels for communication.

  3. (optional) talk to the person and get additional information. The communication can be done via FB messenger or some other communication channel.

  4. (optional) schedule a meeting to present the item.

  5. Receive the payment.

  6. Hand over the product / (optional) Delivery.

  7. Mark the item as sold.

Why don’t sellers mark the item as sold?

  • They are not aware that it is an option.

  • They don’t understand the benefit of it (they were exposed to the messaging but decided to ignore it)

  • They are not here

    • They might use the Marketplace only for selling a single item.

    • They might use Facebook only for selling a single item.

    • They might use their email address only for selling the item.

  • Intentionally, they want to hurt buyersMarketplaceFacebook.

I can think of three approaches to reduce uncertainty around soldunsold items:

  1. Asking

  2. Assuming

  3. Knowing


Mostly, the person who knows whether the item is still relevant is the seller.

The most accurate response will be from the seller.

We can have a few processes to verify it with the seller:

  1. Reactivation of the listing – every item will be posted on the marketplace for two weeks. If the seller interested in continuing the listing, they need to confirm that it is still relevant. Each reactivation will get the item additional two weeks.

  2. Periodical reminders – asking the seller whether the item is still available – the notifications can be push notifications, web, mobile, and email. The reminders can occur once a week.

  3. Post communication confirmation – a day after we identify communication between the seller and a potential buyers (a buyer is someone who reviewed the item) that occurs on FB or WhatsApp, we will send a message to check if the item is still relevant.


Sometimes we don’t know since we haven’t received a response from the buyer.

There are a few metrics that can assist us in scoring the item, and if it goes above some threshold, we can mark it as potentially sold and deprioritize it in the view.

  1. The seller’s FB’s visits frequency dropped.

  2. The seller’s messages response rate dropped, there was an increase in response time, or messages were kept unread.

  3. Read (ML) of FBWhatsApp messages (“not relevant”, “sold”, “sorry”, “apologize”).

  4. Proximity of potential buyers to the seller (location-based FB’s app ).

  5. Ask suspected buyers whether they bought the item.

  6. Seller’s FB activity – post story about the item.


  1. Manage the transaction via FB – if a transaction is made using FB’s payment service.

  2. Deliver the product – if FB extends and does the delivery or works with 3rd parties.

Product Description – Facebook Marketplace is an interface for people to buy and sell things locally or shipped, though FB doesn’t go into the transactions & logistics of the trade.

Goal – To identify if an item has likely been sold

Users – Buyers and Sellers (For our goal lets focus on seller)
User Journey (Seller):
1. Seller lists an item/stock to be sold on FB Marketplace and add the description, photos and other details
2. Seller gets option to boost, edit, remove the listing.
3. Seller gets added to a group conversation with buyer if some buyer is interested in enquiring more about the product
4. Seller can clarify the details with buyer and both the parties can collaborate to complete the trade (Delivery, Payment etc.)
5. Seller also gets an option to mark item as sold
6. Seller also gets an option to mark item as pending – possibly meaning that item is out of stock

Problem – Sellers usually don’t mark the item as sold even if it has been sold. And since the trade is happening between two parties personally with no involvement of FB, it is struggling with identifying which items have been sold.

Possible functionality based solutions –
1. If there is any boost/renew request raised by seller in last week/month. If seller is requesting for a boost/renew, it is likely that item is not sold yet.
2. If there is any recent update made the seller in the listing. If seller has edited some detail in the listing, it is likely that seller is still trying to sell the item.
3. If seller has recently listed the item on other forums (For ex. buy and sell). Again, it tells seller is trying to sell the item.
4. If seller is joining the buyers’ enquiry groups. i.e. if a buyer makes a messanger enquiry about the item, FB creates a group between this buyer and the seller to initiate the conversation. Seller gets an option to join this group to take the conversation forward. so if a seller is not joining these groups, it is likely that item has already been sold.
5. If a buyer reports the item as sold. i.e. if buyer finds out from seller in the conversation that item has been sold and goes on to raise a report against the same as it should have been marked as sold by the seller to respect buyers’ time.

Possible metrics based solutions –
1. The length/duration of the chat on this listing. If the length of chat is less or if seller responses are not more than two sentences, FB can assume that seller is not interested in selling this item to the buyer and its possible that item has been sold. But we need to analyse if FB can do that without compromising on chat privacy. And FB can send out a notification to seller to confirm if the item has been sold or not.

Other possible solutions –
1. FB starts charging once the duration for which a listing can be kept freely is passed, let’s say 3 months. This will encourage sellers to remove the items that are either sold or are not showing any response. But we do need to look into the side effects this strategy could have on the bigger goal of the Facebook which will depend on the stage of product life cycle.

Thanks. Please share your feedback.

This was a really fun Facebook technical question to answer. Its very easy to make things more complicated 😛

I will focus on three specific areas to answer this question:

  1. Framing:
    • What problem are we solving and how it relates to the company mission
    • Users
  2. Goals:
    • Goals of this (data) product
    • Establish a criteria for success
  3. Solutions:
    • Review of existing product functionality
    • Propsed Metrics

Initial Problem

Many sellers don’t mark items as sold on FB Marketplace, what existing functionality and metrics could be used to determine whether an item has likely sold?
I would first confirm that – based on the phrasing – the interviewer wasn’t restricting the answer to use existing metrics. I will assume for this the answer is no – existing functionality, and any metrics I can come up with based on those functionalities and known data.

Linking to the Company mission

The company mission is worth keeping in mind here: enable people to build communities and bring people together. While a marketplace is not expected to trigger new friendships, a busines and less formalised trading between people are a postive reflection of a community with trust and safety. Whether physical or online/virtual, it is vital there is trust between buyers and sellers  and also in the quality of the product being traded. The transaction must also be trusted as safe, or with a mechanism to reclaim ones money back in the event of fraud.
Much of that trust is dervied from the platform, who is expected to provide tools and services in the form of buyer/seller ratings, supporting issues with bad actors etc. In the real world, when we shop in a market we assume a local council or market organiser have vetted the stall owner in some way – in other words, our perception of a maket and its sellers are interconnected. If we have a bad experience with one seller, we may lose trust that other bad actors are not being weeded out.
People are able to share posts about a new marketplace item into FB Groups, these communities need to trust what they see are as described. Relating this to the problem at hand – people need to trust that the items they see are available and not already sold.
We will take the overall mission of the FB Marketplace team as: enabling people and businesses to safely and efficiently buy and sell goods to other FB users. FB Marketplace does not facilitate delivery or the exchange of money.


The user we are focusing on is the seller since the question states that many sellers don’t mark items as sold. In other words, it’ not every seller. Sellers have to manually mark an item as sold, so why might some users not do it?
– The seller is not aware of the feature to mark items as sold
– The seller forgot or is not in the habit of doing it
– The seller sees no advantage (or no motivation to avoid a potential disadvantage) by not doing it
– The seller is deliberately not doing it
Some of these overlap with possible user categorisation relating to the level/type of marketplace experience a user has:
– new/first time seller
– infrequent seller
– frequent seller
– formalised business (which can then also be either a new, infrequent, or frequent seller)
– a criminal or fraudster
Plus of course, sellers are rated on the marketplace! However, ratings are not specific to an item, just to the seller
Additionally, Facebook has data on the friend community of each seller on Facebook itself including Messenger, and potentially on Instagram and Whatsapp also. The account itself may hold clues in terms of online behaviour with the platform(s) and with friends.
To summarise, the existing functionalities relating to users we can utilise and analyse data about are:
1. Seller ratings / feedback / reports from other users
2. Seller behaviour on FB marketplace
3. Seller experience and business status on FB marketplace
4. Seller’s personal FB / Insta / Whatsapp networks and behaviour


Our goal is to reliably identify items which are likely to have been sold but have not actually been marked as sold by the seller


a high degree of accuracy when identifying items are being likely sold, but not marked as sold by the seller

Existing functionalities:

1. Buyers rating sellers: After trading with a seller, a buyer will rate them. True and fair buyers would not rate a seller if they have not purchased from them. So, assuming we have high confidence that a buyer has actually purchased an item we can utilise this in our metrics.
2. Marketplace seller ratings: Based on when a seller recieves a rating
3. Behavioural data: Segmentation of sellers based on their behaviour, status and potentially their personal network.
4. Messages: NLP analysis of buyers’ messages to sellers asking if items are still available, which have gone unanswered
5. Data analysis and machine learning are applied to create a confidence score for all items not marked as sold. Utilising the experitse of data science we could apply ML techniques to analyse items. However, depending on the ML technique(s) applied it may require good training data. FB has scale, but the training data would need to include items that are known to be sold and known to be unsold. Given that we are trying to identify the latter, some ML techniques may not be appicable. I would work with data science to see what is possible.
6. People reporting items to Facebook directly as listed incorrectly: This is the easiest and most convenient, but works on the assumption that people will report items as not properly marked. There is no mechanism for buyers to confirm they have recieved the item (which there is on eBay for example), which would also help to infer an item was sold.


Based on the above, possible metrics could be:
– confidence score for sold items: could be derived by data science team or by a formula using multiple metrics below.. assuming there is a confidence score we could simply have:
– count of items likely sold (filtered by those where confidence score is high; assuming a simple categorisation of Low, Med, High)
Metrics (assuming the above confidence score is NOT available):
The metric names will likely be verbose to make them clear, I would find shorter and simpler names with more time… 
– Inferred purchase:  Using data that a buyer has rated a seller to infer an item was purchased. The difficulty here is identifying which item a person has actually purchased as the transaction and shipping are not facilitated by FB. However, we can utilise data about items a person viewed, liked, saved, commented on or asked the seller a question about to infer which item it was.
– Unanswered item status requests: the number of times buyers ask if items are still available which were not answered or not answered in the affirmative.
– Item time on marketplace or “time since posted”: how long an item has been on the market (this assumes older items are more likely to be sold, which may not be true for some items which are not at all popular and where the seller wants to hold out for a sale)
– Sellers not likely to mark items as sold: (based on the behavioural analysis mentioned earlier). This assumes a confidence interval can be created from the analysis of behavioural data – this would enable a ‘grade’ or index to be created. Based on the grading, this metric only counts the sellers above a certain threshold.
– Fraud flag: true/false to indicate that a flag marker is placed on the account due to bad ratings, comments, or reports from other marketplace users.
Using this data, I can see the potential to create a mechanism to send notifications to sellers to simply ask them if an item has sold. Ideally, that seller could answer Y/N directly in the FB notification to reduce friction and remove the need for an extended user journey. If users have multiple suspected unsold items, then targetted training messages could help e.g. an email that explains the situation with their items and shows them how to mark them all as sold.