The Link I Almost Broke and What It Cost Me
The Link I Almost Broke and What It Cost Me
It was a Thursday afternoon in June, and the humidity in my home office had that heavy, pre-storm weight. I was staring at a client’s site — a small Singapore-based bakery that sold pandan cakes and kaya buns — and I’d just done something stupid.
I’d changed the URL of their “best-sellers” page without updating any of the internal links that pointed to it. The homepage still linked to the old slug. Their blog still referenced it. Every single anchor text — “our most popular cakes,” “what customers keep ordering,” “the one that sells out by noon” — now led to a 404.
The bakery owner, a woman named Mei who I’d only ever spoken to over WhatsApp, sent me a voice note at 6:14 PM. Her voice was tight. “We had three people email today saying the ‘best sellers’ button didn’t work. Can you check?”
I checked. My stomach dropped. The site had been broken for maybe five hours. That’s five hours of potential orders lost, plus the hit to how Google sees the site — because broken links aren’t just user-hostile, they tell search engines that a page is dead.
That evening, sitting in front of a fan that barely moved the air, I learned more about anchor text than I had in any SEO guide. And a lot of it came from fixing my own mess.
Forty-Seven Links in a Spreadsheet
About a month before the incident, I’d done a site audit for a travel blog run by a retiree named Raj. He wrote about hawker centers in Singapore — detailed posts about laksa stalls in Bedok and chicken rice joints in Maxwell. But his internal linking was a disaster.
Every single link in his posts said “click here.”
Not “read my review of this laksa stall.” Not “here’s where I found the best chicken rice.” Just “click here.”
I asked him why. He shrugged. “It’s easier. The reader knows what to do.”
It took fifteen minutes to explain why that was bad. “Click here” tells Google nothing about the destination page. It’s a dead signpost. And for readers, it forces them to guess whether the link leads to a map, a recipe, or a photo gallery. Raj’s bounce rate was high — people would click through, see something they didn’t expect, and leave within twenty seconds.
We spent an afternoon rewriting every single anchor text across his ten most-visited posts. “Click here for the full menu” became “look at the full menu at this Tiong Bahru stall.” “Click here to see photos” became “photos of the char kway teow here.”
Three weeks later, his average session duration went from 40 seconds to 2 minutes. Not a massive number, but for a small blog about hawker food, it was real. People were actually staying to read.
Back to my bakery problem. After I fixed the broken link — rewrote the slug back to the original, then properly set up a 301 redirect so anyone who already had the new URL bookmarked wouldn’t hit a wall — I spent the weekend going through every internal link on the site.
There were forty-seven.
I laid them out in a spreadsheet. Column one: the anchor text. Column two: where the link lived. Column three: the destination page. It was boring work. But it showed me patterns.
Twenty-two of the forty-seven links used the same two anchor phrases: “view here” and “read more.” They were spread across product pages, the blog, and the footer. Each one pointed to a different place. One “read more” led to the shipping policy. Another led to a blog post about storage tips for their cakes. The same phrase, two completely different destinations.
That’s not just lazy — it’s confusing for both humans and search engines. If a crawler sees “read more” fifteen times across a site, it can’t figure out which pages those links are supposed to support.
I changed them. Every one. “Read more” became “storage tips for pandan cakes,” “shipping timelines for kaya buns,” “cancellation policy for large orders.” Each anchor now told the reader — and Google — exactly where they’d end up.
Within two weeks, the site’s blog traffic went up about 30%. Not because I added new content, but because the internal links finally made sense.
The Mistake I Made Three Times Before It Stuck
I still screw this up. Last month, I was updating a page about SSL certificates for a client in Jurong. I typed “learn more about our security options” as an anchor text — and then I realized the destination page was about email hosting, not SSL. The words “security options” implied an SSL page. The reader would click, confused. I caught it before publishing, but barely.
The rule I now follow is simple: before you write a link, ask yourself what the page you’re linking to is actually about. If the anchor text doesn’t match that page’s topic, rewrite it. Don’t fudge it with vague words.
I also stopped using the same anchor for different destinations. It sounds obvious, but I see it all the time on sites I audit. A blog about SEO will have “check out this guide” pointing to a post about meta descriptions on one page, then “check out this guide” pointing to a keyword research post on another. Same anchor, different page. It dilutes the signal. Each link should be unique.
The Boutique Case Study With No Links
There’s a tension with external links. Some people think any link that leaves your site is a bad link — you’re sending traffic away, losing the user. But that’s not how it works. A well-placed external link to a trusted source tells Google you’re not making things up. It adds credibility.
I had a client who ran a web design portfolio site. He’d written a case study about building an e-commerce store for a local boutique. The post mentioned the boutique’s website, the Shopify theme used, and the payment gateway. But he didn’t link to any of them.
“Why would I link to them?” he asked. “They’ll just click away.”
I explained that linking to the boutique’s actual store, the Shopify documentation, the payment gateway’s homepage — those links showed he was referencing real, verifiable things. It made his case study more trustworthy. And for search engines, it adds context about what sort of page your link is on.
He finally agreed, but only after I showed him that the boutique’s link had no “nofollow” tag. “If you’re linking to a site you trust,” I said, “you don’t need to hide from it.”
He added three links. One to the boutique’s homepage, one to a specific product category, one to the payment gateway’s security page. His case study started ranking for a few “e-commerce Singapore” terms within a month.
The Wrong Kind of External Link
Not all external links are good. I’ve seen sites that link out to spammy directories or low-quality article farms just to pad the page. That’s worse than no link at all — it tells Google you’re comfortable associating with bad neighborhoods.
A few years ago, I worked with a small hosting company in Singapore that had a “partners” page listing about twenty companies. One of them was a domain registrar with a terrible reputation — lots of complaints about hidden fees. I checked the registrar’s Trustpilot: 1.8 stars. That link was a liability. I asked the client to remove it. They did. The page stayed otherwise the same, but removing that one bad link probably wouldn’t hurt.
External links should come from high-quality, relevant sources. A link to a W3C page about HTML best practices? Good. A link to a random blog that copied content from Wikipedia? Bad.
1TB SSD Storage — And How Google Stopped Listening
This is one I didn’t understand until I overdid it.
Another client — a cloud hosting company — wanted me to build links to their “1TB SSD storage” page. I did it. A lot. Every internal link in their blog posts and service pages used variations of “1TB SSD storage,” “SSD hosting plans,” “cheap SSD storage Singapore.”
Within two months, Google started ignoring those links. The page wasn’t ranking for any of those terms. I later learned about something called anchor text over-optimization. When every link to a page uses almost the same words, search engines see it as unnatural. They discount the links or, in extreme cases, penalize the page.
The fix was simple: I diversified the anchor texts. “Fast storage for your site,” “reliable server speeds,” “why SSDs beat HDDs for hosting.” Also added some naked URLs — just “here” or “this page” with no keyword at all. The page slowly recovered. It still doesn’t rank top three, but it’s on page one again.
I keep a rough 60/40 split now: 60% descriptive, keyword-rich anchors, 40% generic or branded anchors or naked URLs. It’s not science, but it works.
The One-Page Rule That Changed Everything
Last thing. I read somewhere — can’t remember the source — that you should never link to the same page with the same anchor text from the same page. Made sense. But I took it further: I try not to link to the same page from two different pages on the same site unless the anchor texts are clearly different.
Example: my bakery client’s “cancellation policy” page. I had it linked once as “cancellation policy for large orders” from the order page, and once as “how to cancel an order” from the FAQ. Different anchors, different context. That was fine. But if both links had been “cancellation policy,” Google would see two identical signals pointing to the same destination. Not a penalty, but wasted potential — you could be using that second link to reinforce a different keyword or concept.
Every link on a site has a job. It’s not just there to move the user around. It tells a search engine what the destination page is about. Duplicate anchors say the same thing twice. Unique anchors say more things once.
What I Do Now Before Hitting Publish
I have a checklist. I go through it every time, even for a short blog post.
- Read every link out loud. If the anchor text sounds weird in the sentence, I rewrite it.
- Check for duplicates. If I have two links with the same anchor pointing to different pages, I change one.
- Check for over-optimization. If every link uses a target keyword, I add a naked URL or a branded anchor.
- Verify the destination. I click each link to make sure it goes where I think it does. The 404 panic of June 2023 is not something I want to repeat.
It takes maybe ten minutes. But those ten minutes save me from voice notes that start with “we had three people email today.”
The bakery is still running. The client is happy. And now, when I write a link that says “our best-selling pandan cakes,” I know it actually takes you to the page with the pandan cakes, not a dead end that tastes like burnt sugar and embarrassment.
📷 Photos: Grant Durr (Unsplash), Ling App (Unsplash)