 <p>How about adding one extra decimal that is to be rounded and then discarded:</p> <pre><code>var d = 0.241534545765; var result1 = d.ToString("0.###%"); var result2 = result1.Remove(result1.Length - 1); </code></pre>