Similar to the RadChart's http://demos.telerik.com/aspnet-ajax/chart/examples/newfeatures/intelligentlabels/defaultcs.aspx For the time being you can implement a custom logic for offsetting y point positions of labels. For example offset every 2nd item label position: <telerik:RadScriptManager ID="RadScriptManager1" runat="server"></telerik:RadScriptManager> <script> function pageLoad() { offsetItemLabels(); } function offsetItemLabels() { //Find all text elements on the page var textElements = document.getElementsByTagName("text"); var numSeriesItemLabels = 0; //Iterate through the text elements for (var i = 0; i < textElements.length; i++) { var currTextEl = textElements[i]; //Set the desired string/symbol that represents the series labels var SeriesLabelSymbol = "@SL"; if (currTextEl.textContent.indexOf(SeriesLabelSymbol) != -1) { numSeriesItemLabels++; var currText = currTextEl.textContent.split(SeriesLabelSymbol); //Offset y point for every 2nd item label currTextEl.textContent = currText[1]; if ((numSeriesItemLabels) % 2 == 0) { currTextEl.attributes.y.textContent = currTextEl.attributes.y.textContent * 1 + 35; } } } } </script> <telerik:RadHtmlChart ID="RadHtmlChart1" runat="server" Width="600px" Height="400px"> <ChartTitle Text="Chart title"> </ChartTitle> <PlotArea> <Series> <telerik:LineSeries Name="Series 1"> <SeriesItems> <telerik:CategorySeriesItem Y="18" /> <telerik:CategorySeriesItem Y="18" /> <telerik:CategorySeriesItem Y="18" /> <telerik:CategorySeriesItem Y="18" /> </SeriesItems> <LabelsAppearance> <ClientTemplate> @SLCategory is #=category# Value is: #=value# </ClientTemplate> </LabelsAppearance> </telerik:LineSeries> </Series> <XAxis> <Items> <telerik:AxisItem LabelText="item 1" /> <telerik:AxisItem LabelText="item 2" /> <telerik:AxisItem LabelText="item 3" /> <telerik:AxisItem LabelText="item 4" /> </Items> </XAxis> </PlotArea> </telerik:RadHtmlChart>