Note: This is a repost of an old article. It contains valuable information still valid to this day regarding adjusting the listing fees of Particl Marketplace. Please consult the table of contents to jump to the relevant section or click here.

On the 12th of August 2019, the Particl Open Marketplace launched live on mainnet. This gave the ability for anyone in the world to buy and sell goods and services without requiring the assistance of any third-party and without leaving any data trail behind. This was a big milestone and disruption within the eCommerce space, but it’s important to remind ourselves that the Open Marketplace is still a Beta piece of software.

That means there are still ways to go before the Open Marketplace is ready for mass adoption and the on-boarding of a more mainstream audience. That also means this current Beta period is extremely important — it serves as the perfect testing ground to try the platform and see what’s missing and what could be improved.

Indeed, the Particl network needs you now more than it ever did. As the community of users grows, so will the amount of collected feedback and different perspectives. In any case, more feedback is always good and helps highlight more quickly what the platform is doing right or wrong.


Table of Content (Click me)


Dynamic Listing Fees

One of the main feedback the Particl team has received a lot since the launch of Particl Marketplace is the cost of the listing fees — what you pay to put an item or service up for sale.

Luckily, the Particl network is entirely decentralized; it's controlled by its community of users and doesn’t require any party to operate. The same is true for Partic Marketplace, the first official distributed app of the network.

For this reason, it is entirely possible for stakers to adjust the listing fees of the marketplace. It’s also quite easy to do so, and this blog post will walk you through the simple process of doing it. But first, let’s go over the main implications of having listing fees on the marketplace in the first place. That will serve as a good indicator for you to make an informed decision on how much you want to change the listing fees of the network.

Why are Listing Fees Needed?

There are several reasons as to why Particl Marketplace charges fees for listing items. It is usually believed that as few fees as possible, or no fee at all, is the ultimate goal for decentralized marketplaces. It is, of course, a very appealing proposition, but it does come with some pretty important trade-offs.

Fighting Spam

The first obvious use of listing fees is to deter spam on the network. Because there is no central authority governing the Open Marketplace, there isn’t any person with special moderating powers to prevent ill-intended users from spamming the marketplace with dummy listings. Particl instead uses listing fees to introduce a financial cost behind posting listings. That cost is on the low end, but if a spammer starts posting hundreds or thousands of spam listings, then it quickly adds up and ends up being costly for the attacker.

That’s the main reason why the marketplace charges a listing fee, and it’s the same reason why you have to pay a transaction fee when sending Bitcoin, or Particl, to someone. If such fees wouldn’t be in place, then decentralized networks could fall victim to many kinds of spam attacks with little to no recourse.

Keeping the Marketplace Content Up-to-date

Another lesser-known use of listing fees on a decentralized marketplace is to keep it “clean” of old listings that aren’t maintained by sellers anymore. That’s because, once again, there is no central party with special moderation powers that can curate content and trim off inactive listings. This can be quite problematic in terms of user experience — imagine yourself placing an order for a certain product, but never getting your order accepted or rejected by the seller. Now imagine the same thing happening 80% of the time you place an order. Pretty annoying, right?

How listing fees work on Particl Marketplace is that you pay fees depending on two factors: the size of your listing (number of images, amount of text, etc) and the duration it stays listed on the marketplace. That means the longer you set your listing to stay up, the higher the fee is going to be. This system works in keeping the marketplace free of inactive listings by associating a financial cost to its duration.

Theoretically, if you pay for your listing to stay up for X amount of days, then it is more than likely that you will keep an eye on it for the full duration of the listing. Failure to do so would result in a net waste of funds.

Incentivizing Stakers to Secure the Network

Another important aspect of the listing fees is in how they help strengthen the security of the network by incentivizing stakers to run staking nodes.

In fact, all Open Marketplace’s listing fees are redistributed, in full, to stakers, meaning that as more people use the marketplace, the staking rewards will keep on getting more lucrative. This also not only contributes to getting a greater number of nodes running on the network, but it also helps with the network effect of the platform, an important aspect that tremendously helps to spread the word around in an organic manner.

High Listing Fees vs Low Listing Fees

Before you go ahead and adjust how you would like listing fees to be, it is important to understand the impact behind lowering or increasing them. Some arguments can be made from both sides, and it is important to be aware of both perspectives to make the best-informed decision possible.

Lower fees

  • Easier to onboard large scale vendors and lowers the barrier to entry
  • Makes the financial cost of spamming the network smaller
  • Makes the financial cost of not maintaining a listing smaller
  • Smaller increase in staking rewards per listing posted

Higher fees

  • More costly for large scale vendors to post their inventory on the marketplace and higher barrier to entry
  • Makes the financial cost of spamming the network greater
  • Makes the financial cost of not maintaining a listing greater
  • Bigger increase in staking rewards per listing posted

It’s important to note, though, that lower fees don’t necessarily mean smaller staking rewards for stakers. It does make a smaller increase on staking rewards per listing published, but lower fees enable larger sellers to set up shop on the marketplace and post large inventories, potentially leading to more individual listings on the marketplace, leading to bigger staking rewards.

Tutorial — How to Adjust Listing Fees

So you now have a pretty good idea of how you’d like listing fees to cost but don’t know how to make it happen. You find yourself in the right place! In fact, since Particl Core 0.18.0.10, it has been possible for stakers to broadcast their target listing fee to the network.

A Community-Powered Tug-of-War

One staker obviously cannot single-handedly modify listing fees to whatever he wants them to be. That’s because this value is attained through community consensus.

Listing fees on Particl are updated every 5,040 blocks, or roughly every week (10,080 minutes). This is done according to the consensus established by stakers. In between those listing fee updates, the network’s consensus is in a constant state of fee discovery. A target listing fee value (identified by the smsgfeeratetarget parameter) is dynamically adjusted each time a block is staked. Every 5,040 blocks, the fee is adjusted based on the average of all fee targets broadcast by stakers.

The smsgfeeratetarget can only increase or decrease in small increments. Then, once the 5,040th block is reached, the network looks up at the current smsgfeeratetarget value and makes it its base listing fee until the next 5,040th block.

This can be seen as a giant game of digital tug-of-war. Each staker broadcasts to the network what kind of listing fees it wants to see on the marketplace (higher or lower fees?). Then, the smsgfeeratetarget value either trends upwards or downwards depending on where the consensus lies. If the majority of stakers want fees to remain the same, then that consensus won’t move by a whole lot. If the majority wants to lower the fees by just a little, the smsgfeeratetarget will slowly trend lower, in small increments. If the majority of stakers want dramatically lower listing fees, then smsgfeeratetarget will trend lower at a much faster pace. In other words, the more people pull the metaphorical rope to their side, the faster the network’s going to adjust its fees. It is just like a digital game of tug-of-war.

Note (01-12-2021): The listing fee adjusting feature will be updated and improved in the next hardfork coming in early 2022. While you can adjust the fee target at this moment, doing so might result only in negligible changes.

The fact that smsgfeeratetarget can only trend upwards or downwards in small increments enhances the stability of fees on the marketplace and makes the process of establishing consensus smoother and less bumpy (less dramatic and unpredictable changes).

Put the current value into perspective

To get a better understanding of the listing's fee impact we need to put the current market price for PART and the use-case of 100 listings per month into perspective.

Note: The listing_size is an assumptive averaged number and consists of 2-3 images per item and 1000 chars of text.

# Calculations basis

PART_price = $1.00
fee_rate = 0.00004762
listing_size = 500KB
listing_days = 30
listing_items = 100

# Formula

((((listing_size x fee_rate) * PART_price) * listing days) * listing_items)

((((500 x 0.00004762) * 1.00) * 30) * 100) = $71.43

# Calculations

PART RATE PER DAY 
500x0.00004762 = 0,02381

USD RATE PER DAY 
0.02381 x 1 = 0.02381

USD RATE PER MONTH 
0.02381 x 30 = 0.7143

USD RATE PER MONTH for 100 ITEMS 
0.7143 x 100 = $71.43

In the example above, a vendor would need to spend $71.43 per month for 100 listings. But, of course, no final value fee or any other fees apply to a sale with Particl Marketplace.

Now, we must keep in mind the idea of this listing fee is to fight off spam. So, ideally, the lowest number possible gets signaled by the community and should get increased if it seems needed to fight off spam. This is where your help is needed.

Broadcast a Different Listing Fee Target

The way to broadcast your desired smsgfeeratetarget value depends on how you're currently staking your coins. To broadcast your target, you need to do two things:

  • Take note of the current value of smsgfeeratetarget
  • Broadcast your desired target to the network

If You’re Staking on Either Particl Desktop or Particl-Qt

If you are not cold staking your coins and only keeping a Particl wallet “unlocked for staking only”, then adjusting your smsgfeeratetarget parameter is pretty simple. To do so, you first need to know the current value of smsgfeeratetarget so that you can figure out your desired target.

To do so, simply open up the <console> and enter the smsggetfeerate command.

Typing this command will return the current value of smsgfeeratetarget in the console window. This is the current base value being used by the marketplace to establish listing fees. In the example illustrated above, this command returns the value 23255. This means the current value of smsgfeerate is 0.00023255. This is important to know as it will tell you what value you want to broadcast depending on your preference.

Now you need to broadcast to the network your desired target. To do it, type the following command in the console by replacing 0.00000001 with whatever target you want to set.

walletsettings stakingoptions {"smsgfeeratetarget":0.00000001}

For example, if you would like fees to be 10x lower than 0.00023255, then you would put the value at 0.00002325. If you want to reduce fees by 100x, then simply put the value at 0.00000232. The lowest possible number is 0.00000001. Note that your desired value has to be 8 decimals or less.

Important: If you already have a custom stakingoptions parameter, like a custom rewardaddress, for example, then please enter the following command into the <console> and replace addr by the rewardaddress you set up previously:
walletsettings stakingoptions {"rewardaddress": "addr","smsgfeeratetarget":0.00000001}

If You’re Cold Staking Coins on a Staking Node

If you cold staking your coins on a staking node you control, then you will need to broadcast your listing fee target from the staking node itself.

To do so, you first need to know the current value of smsgfeeratetarget so that you can figure out your desired target. To do so, simply open up the console and enter the following command:

./particlcore/particl-cli smsggetfeerate

Typing this command will return the current value of smsgfeeratetarget in the terminal. This is the current base value being used by the marketplace to establish listing fees.

At the time of writing this blog post, this command returned the value 23255. This means the current value of smsgfeerate is 0.00023255. This is important to know as it will tell you what value you want to broadcast depending on your preference. The lowest possible number is 0.00000001.

Now you need to broadcast to the network your desired target. To do it, first update your partyman application to make sure you are on the latest version:

cd partyman && git pull

Then, open up the smsgfeeratetarget menu by typing this command:

./partyman stakingnode smsgfeeratetarget

This command will first give you the current value of smsgfeeratetarget that your node broadcasts. It'll then ask you whether you would like to configure a new target or not. If you wish to do so, type y to move forward through the process.

Once that is done, the partyman application will prompt you to type in your desired target. Simply write the target you want to broadcast. For example, if you would like fees to be 10x lower than 0.00023255, then you would put the value at 0.00002325. If you want to reduce fees by 100x, then simply put the value at 0.00000232. The lowest possible number is 0.00000001. Once you’ve chosen and written your new target, press Enter to apply the change and start broadcasting it to the network. Note that your desired value has to be 8 decimals or less.

If You’re Staking on a Cold Staking Pool

If you’re staking your coins on a staking pool, then you cannot broadcast your desired target. You will need to either stake your coins on your own staking node or find a staking pool that broadcasts a target that’s close to your liking.

If You’re Operating a Cold Staking Pool

If you are the operator of a cold staking pool and want to broadcast a different target, then simply follow the instructions available on Github by following this link.

If You’re Not Staking

If you’re not staking your coins, then you cannot broadcast your target to the network. This is a golden opportunity for you to get started with staking and be part of Particl’s fully decentralized consensus-finding process. If you want to get started with cold staking, simply follow the steps available in this Particl Academy tutorial.


Now you’re all set to start broadcasting your listing fee target rate to the network. Take note that, at this time, the fee adjusting feature is not optimal and may result in negligible changes only. In the next hardfork (early 2022), the feature will be significantly improved and made more effective. But it's never too early to set up your node in the meantime!


Particl is Participation

Get recognized as someone that cares. With your help, we become more noticed out there. It takes seconds, and you are making a statement by giving us a follow and hitting the bell icon.

YouTube Twitter Mastodon Reddit

Join the instant messaging chats. There's no need to be active, but it’s good to be in the loop.

Discord Telegram Element / Matrix

Gain deep knowledge about Particl by reading.

Website Academy Wiki

Last but not least, a list that shows an infinite number of links clearly categorized and on one page.

Useful Particl links