Since Batcher was released onto Ghostnet, there have been no fees for swapping tokens. All services incur a cost to run for an ecosystem, and Batcher is no different. Whilst this cost will be sized before going to mainnet, it will be composed of oracle costs and ongoing maintenance costs.
The design of Batcher is such that, to clear orders within a given batch, a price must be sourced on-chain. As part of the progress to mainnet, Marigold will be deploying an Oracle solution to source the prices used by Batcher for clearing securely. The cost of running the Oracle and the maintenance of the oracle and contract going forward will be supported by Marigold. As a company, Marigold seeks to build tools and solutions that will benefit the long-term health of the Tezos ecosystem. Batcher is no different in this regard, and whilst Marigold is a core developer on Tezos and receives funding from the Tezos foundation, further into the future, another team/organization might take over the running of Batcher for the ecosystem.
Marigold has decided to add fees to Batcher when swapping tokens to make a future change of ownership as seamless as possible. Whilst Marigold maintains Batcher, these fees WILL BE BURNED. Suppose the maintenance of the contract and oracle move to another team. In that case, it will be possible to redirect these fees to support the maintenance of Batcher to ensure the least disruption to users of Batcher and the broader ecosystem.
It is common for DEXs to charge between 0.1% and 0.3% as an average trading fee based on total trade value. However, Batcher is an uncommon DEX. It does not have liquidity pools that require more significant returns to attract liquidity providers. Thus, the fees charged will purely reflect the cost of the upkeep and maintenance of Batcher.
If you want to know more about trading fees and Batcher, please read our blogpost on Marigold website Batcher - Trading Fees