My product link shows %25D9 instead of Arabic letters and opens an error page. How do I get it back to the right form?
%25 is an encoded % sign, so %25D9 means the link was encoded twice. Decode it once and check the result: if it now reads like %D9, that is the normal encoded form browsers understand, and a second decode shows the readable Arabic letters.
How double encoding happens
The Arabic letter م is written in a link as %D9%85. If someone takes that encoded form and encodes it again, each % in it is treated as an ordinary character that needs encoding, so it becomes %25. We tried it in the tool: encoding %D9%85 gave %25D9%2585, with a note that the text looks already encoded and that encoding it again turns every % into %25.
It usually happens when you copy a link from the address bar, already encoded, and paste it into a tool or system that encodes whatever it is given. Or when a link passes through two systems that each encode values. The result is a link that asks the server for a page literally named '%D9%85...' instead of 'م...', which does not exist.
The fix, step by step
Take the link to a page named عطور (perfumes) after it was encoded twice:
https://example.com/%25D8%25B9%25D8%25B7%25D9%2588%25D8%25B1
- Open the URL encoder/decoder and choose 'Decode', then 'Full URL'.
- Paste the link. The tool gave https://example.com/%D8%B9%D8%B7%D9%88%D8%B1: each %25 turned back into %.
- That output is the correct encoded link, and it works as it is. Copy it and use it.
- To see the letters, paste the output and decode it once more, which shows https://example.com/عطور.
A single short code behaves the same: decoding %25D9%2585 gave %D9%85, and decoding that gave م.
Why one step at a time?
Because you cannot always tell how many times a link was encoded. It could be twice or three times. If one decode still leaves %25 in the result, decode again, and stop at the first result with no %25 in it. That is the singly encoded version, the one to use anywhere a link is expected. Decoding beyond that can undo codes that were meant to be there, such as %2F inside a value.
Which mode to decode in
- 'Full URL' for the whole link: it does not decode structural codes like %2F, %3F and %26, so the link's meaning cannot shift during the repair.
- 'Component' for a single value taken from the link, such as a page name or a parameter value, because it decodes everything.
How to stop it happening again
When a text already contains sequences like %D9 or %20, it is most likely encoded, so do not encode it again. The tool warns you about this before you copy the output. And if you are creating new product page links, choosing a short Latin address with the URL slug generator spares you the layers of encoding from the start.
Common questions
Is a link containing %D9 healthy?
Yes. That is the form in which an Arabic link travels, and the browser shows it in Arabic in the address bar.
How can I tell a link was encoded twice?
%25 followed by two hex characters, such as %25D9 or %2520, is an almost certain sign.
Does the tool repair the link automatically?
No. It decodes once per run and leaves the decision to stop with you.
