<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Muhammad Tufail</title>
    <description>The latest articles on DEV Community by Muhammad Tufail (@wisercent).</description>
    <link>https://dev.to/wisercent</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4164014%2Fdad3d16d-6231-4eb1-a4a0-119f958073cd.png</url>
      <title>DEV Community: Muhammad Tufail</title>
      <link>https://dev.to/wisercent</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/wisercent"/>
    <language>en</language>
    <item>
      <title>How I built a TikTok Shop fee calculator (and what TikTok's 2026 fees actually are)</title>
      <dc:creator>Muhammad Tufail</dc:creator>
      <pubDate>Mon, 05 Oct 2026 13:21:05 +0000</pubDate>
      <link>https://dev.to/wisercent/how-i-built-a-tiktok-shop-fee-calculator-and-what-tiktoks-2026-fees-actually-are-2mca</link>
      <guid>https://dev.to/wisercent/how-i-built-a-tiktok-shop-fee-calculator-and-what-tiktoks-2026-fees-actually-are-2mca</guid>
      <description>&lt;p&gt;I built a TikTok Shop profit calculator as a static site — no backend, no database, just HTML/CSS/JS computing fees in the browser. The interesting part wasn't the code. It was discovering how messy TikTok's 2026 fee structure is.&lt;/p&gt;

&lt;p&gt;What the calculator computes (October 2026 rates):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;US: 8% reported (Aug 2026); official table still shows 6%. Transaction fee bundled, no separate charge. New seller rate 3% for 30 days. Refund admin fee: 20% of refunded fee, max $5/SKU.&lt;/li&gt;
&lt;li&gt;UK: 9% VAT-inclusive. No separate transaction fee. New-seller reduced period exists (terms unconfirmed).&lt;/li&gt;
&lt;li&gt;EU (DE/FR/IT/ES/NL): 9% standard since Jan 8, 2026 (was 5%). New seller 4% for 60 days. Refund admin fee 20%, max 5 euros.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The US 8% figure is the fun one: multiple seller-ops sources report it effective August 4, 2026, but TikTok's public rate table (revised May 2026) still lists 6%. So the calculator has a toggle — reported 8% default, official 6% optional. When the platform won't give you a straight answer, you ship the ambiguity honestly.&lt;/p&gt;

&lt;p&gt;Technical notes for the curious:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Static site, about 10 pages, deployed on Modal as an ASGI app serving static files. One real SEO fix so far: /index.html and / both returned 200 with identical content, so I added a 301 redirect route in FastAPI before the static mount.&lt;/li&gt;
&lt;li&gt;All math runs client-side; fee data lives in a small JS config so monthly rate updates are a one-file change. (TikTok changes these constantly — there's now a monthly research pass to keep rates current.)&lt;/li&gt;
&lt;li&gt;Analytics and cookie consent from day one, because the monetization plan is ad revenue after the custom domain lands.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Biggest lesson: for a tool like this, the data is the product. The calculator UI took a day; keeping fee rates accurate is the actual ongoing work. If you're building in a space where the platform changes pricing quarterly, design for data updates first and UI second.&lt;/p&gt;

&lt;p&gt;Try the live calculator here: &lt;a href="https://abumanan551-eng--tiktokshop-calc-webapp.modal.run" rel="noopener noreferrer"&gt;https://abumanan551-eng--tiktokshop-calc-webapp.modal.run&lt;/a&gt; — happy to answer questions about the fee research or the static-site setup.&lt;/p&gt;

&lt;p&gt;(This article is original content written for dev.to.)&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>ecommerce</category>
      <category>showdev</category>
    </item>
  </channel>
</rss>
