Fixing Bing's 'Title Too Long' Without Duplicate Titles
TL;DR
Bing flags titles longer than 70 characters as high severity. Adding a brand suffix to every title is the usual cause. Keep the suffix only when it fits, drop it when the title alone fits, and otherwise cut at a word boundary, never by keeping just the text before a colon, which creates duplicates.
Key takeaways
- A short site-wide suffix can push a large share of titles past 70 characters.
- Keep the full title in the H1, Open Graph and structured data. Only the title tag needs to be short.
- Truncating to the text before a colon looks tidy but turns sibling articles into duplicate titles.
- Test the shortening function against every real title, checking both length and uniqueness.
Bing Webmaster Tools' recommendations page showed a high-severity error: "Title too long". Bing wants page titles under 70 characters. The pages it flagged all had something in common, and so did the fix.
Where the extra length came from
Like many sites, this one adds the site name to every page title through a template in the root layout:
title: {
default: "Sandeep Kumar Chaudhary — Full Stack Software Developer",
template: "%s · Sandeep",
},
The suffix " · Sandeep" is only 10 characters. But I measured every blog title on the site, and that suffix pushed 1,684 titles past 70 characters. Of those, 343 were too long even without the suffix.
The obvious fix that backfires
My first instinct was to keep only the part before the colon. "Postgres Connection Pooling With PgBouncer and PgCat: Interview Questions to Expect in 2027" would become "Postgres Connection Pooling With PgBouncer and PgCat". Short, clean and readable.
Then I checked what it does across the whole site. Many articles share a lead phrase and differ only after the colon:
- "Topic X: Interview Questions to Expect"
- "Topic X: A Developer Walkthrough"
- "Topic X: Mistakes Teams Make and How to Avoid Them"
Cutting at the colon turns all three into "Topic X". Duplicate titles are a worse problem than long ones, because search engines can no longer tell the pages apart.
The function that worked
The rule I settled on has three steps, tried in order:
- If the title plus the suffix fits in 70 characters, use it as is.
- Otherwise, if the title alone fits, drop the suffix.
- Otherwise, cut at a word boundary, remove any trailing connecting words, and add an ellipsis.
const MAX_TITLE_LENGTH = 70;
const TITLE_SUFFIX = " · Sandeep";
const TRAILING_STOPWORDS = new Set([
"a", "an", "and", "as", "at", "by", "for", "from", "in", "into", "is", "of",
"on", "or", "the", "to", "vs", "with", "your",
]);
export function fitTitle(title: string): string | { absolute: string } {
const t = title.trim();
if (t.length + TITLE_SUFFIX.length <= MAX_TITLE_LENGTH) return t;
if (t.length <= MAX_TITLE_LENGTH) return { absolute: t };
const words = t.slice(0, MAX_TITLE_LENGTH - 1).split(" ");
words.pop(); // the last word may be cut mid-way
while (
words.length > 1 &&
TRAILING_STOPWORDS.has(words[words.length - 1].toLowerCase().replace(/[^a-z]/g, ""))
) {
words.pop();
}
return { absolute: `${words.join(" ").replace(/[\s,:;.?!–—-]+$/, "")}…` };
}
In Next.js, returning { absolute: "..." } from a page's metadata skips the layout's title template, which is how the suffix gets dropped for long titles.
Cutting at a word boundary keeps the distinguishing words after the colon whenever there is room, which is what keeps sibling articles unique. Dropping trailing words like "for" and "with" stops titles from ending mid-thought, as in "…Ready for…".
Only the title tag changes
The shortened text is used only for the <title> tag. Everything else keeps the full title:
- the visible H1 heading on the page
- the Open Graph and Twitter titles used in social previews
- the
headlinein the article's structured data
Readers and social platforms still see the complete title. Only search result listings see the shorter version, and those would have been truncated anyway.
Test against every real title
Before deploying, I ran the same logic over all 5,740 post titles on the site and checked two numbers:
| Check | Before | After |
|---|---|---|
| Titles over 70 characters | 1,684 | 0 |
| Longest title | 107 | 70 |
| Duplicate titles | 0 | 0 |
The duplicate count is the important one. A shortening rule that creates duplicates trades one warning for a worse problem. After deploying, I told Bing about the 1,684 changed pages through IndexNow so it would recrawl them sooner.
The takeaway
If Bing flags long titles, look at your title template first. A short suffix multiplied across every page is usually the cause. Fix it with a rule rather than by hand, keep the full title everywhere except the title tag, and test the rule against every real title for length and for uniqueness.
Frequently Asked Questions
How long should a title tag be?
Bing Webmaster Tools flags titles over 70 characters. Google does not set a hard limit but truncates titles that are too wide for the results page, so keeping the important words early is what matters most.
Does a shortened title tag hurt the page?
No, as long as it stays accurate and unique. The full title still appears as the page heading, in social previews and in structured data.
Why avoid ending a title on words like 'for' or 'with'?
A title that stops on a connecting word reads as broken. Dropping trailing words like 'for', 'the' or 'with' before adding an ellipsis keeps the shortened title readable.
Sandeep Kumar Chaudhary
Full Stack Software Developer· Nepal's SEO, AEO, GEO & AIO expert and share-market educator. More about me
