SingRank

Furniture Sites: 6 of 9 Say Free Delivery, 1 Says When

Contents13

A couple collecting the keys to a new flat needs a sofa before the in-laws visit. They arrive at your site with two questions: how much, and when will it get here. On 22 October 2026 we measured ten Singapore furniture and mattress websites to see which of those two questions the page answers.

Eight of the nine readable home pages showed a price. One said how long delivery takes. Six of the nine promised free delivery without putting a number of days next to it. And five of the ten sites were already serving a file written for AI shopping agents — files that between them point to privacy, terms and refund policies, and never once to a delivery policy.

Key findings: ten Singapore furniture and mattress sites

Every figure was collected on 22 October 2026. The sites came from our own metasearch (SearXNG), not from Google's ranking. Counts carry their base, because the base changes between checks: two sites refused our audit tool, so some rows read "of 8" and some "of 9".

# What we checked The number
1 Home pages showing at least one price in the raw HTML 8 of 9
2 Home pages promising free delivery or free shipping 6 of 9
3 Home pages stating a delivery lead time in days or weeks 1 of 9
4 Home pages with an H2 or H3 phrased as a question 3 of 9
5 Home pages with a tappable phone number or a WhatsApp link 7 of 9
6 Sites serving a file at /agents.md for AI shopping agents 5 of 10
7 Of those five files, copies of one platform template 4 of 5
8 Of those five files, any naming a shipping or delivery policy 0 of 5
9 robots.txt files naming any AI crawler 0 of 9
10 Audited home pages declaring a business entity in schema 4 of 8
11 Audited home pages scoring above 70 on mobile PageSpeed 0 of 8
12 Sites whose real-user LCP was under 2.5 seconds 6 of 7 with field data

Row 3 is the one we would act on first.

What we searched and what we measured

We ran three buyer searches through our metasearch on 22 October 2026: "furniture shop singapore", "sofa shop singapore" and "mattress shop singapore". All three are phrases Google Autocomplete returns in Singapore, which is how we know people type them. From the results we kept Singapore retailers in this trade and dropped directories, listicles, overseas shops and the unrelated pages the engines mixed in — a cake shop and a batik shop both appeared for "furniture shop singapore".

That left ten retailer and mattress sites, and we did two things to each. We ran our audit crawler for the technical readings. Separately we fetched each home page ourselves and read the raw HTML, without running JavaScript, for prices, delivery wording, question headings and contact routes.

Two sites would not let the audit crawler in. One answered HTTP 403 with a page titled "Just a moment...", and one answered HTTP 503 with "Your access to this site has been limited by the site owner". A later fetch with an ordinary browser user agent reached the second site's home page but not the first. So eight of ten were audited in full and nine of ten had a readable home page.

How many sites say when the furniture arrives?

One of nine. A single home page carried a lead time in the text we read: "3-5 working days" for some items and "5-10 Working Days" for others. Every other readable home page left the question open.

Free delivery was easy to find by comparison. Six of the nine said it. Six of the nine mentioned assembly or installation. Eight of the nine used the word showroom somewhere on the page.

In our view that is the wrong order of priorities for this trade. A sofa is not a bag of rice. A buyer has to clear a date, arrange for the old sofa to go, and work out whether the thing fits the lift. Free is useful; eleven days versus eleven weeks decides whether they buy from you at all. The number that is easy to publish gets published, and the number you would have to commit to does not.

Prices went the other way. Eight of the nine home pages carried at least one price in the raw HTML, usually in a product grid. That puts furniture retail ahead of most Singapore service websites, where 99 of 211 showed a price. Selling from a catalogue forces the issue.

Who is already publishing instructions for AI shopping agents?

Five of the ten sites served a file at /agents.md. We requested it directly on all ten: five returned it, three returned 404, one returned 500, and one returned 403 along with everything else we asked for.

None of those five files was written by the shop. Four of the five were the same platform template, identical apart from the store name and URL, between 719 and 737 words. The fifth was a shorter, different version of 524 words. We confirmed this by normalising the store names out of each file and comparing them line by line.

Shopify's own documentation explains why. Its template reference says "The agents.md file is the canonical, agent-facing description of a store" and "Shopify manages an agents.md file by default for every store." A merchant writes their own version only "when you have advanced requirements that the managed file doesn't cover". So on these five sites the file appeared without anybody deciding it should.

Whether assistants act on it is a separate question, and we have no data saying they do. What we can say is that the file is public and it speaks for the shop.

What the agent file says, and what it leaves out

It tells an agent how to transact, and nothing about delivery.

The template points agents at the Shop skill and at Shopify's Universal Commerce Protocol endpoints, then sets rules: place orders "only with the buyer's authorization", identify agent traffic, "Back off on 429 responses", use the buyer's country and currency for accurate pricing. It also allows reading public pages, pointing at /sitemap.xml, /products/{handle} and /collections/all. Shopify's Storefront API reference backs the identification rule, noting that bot operators crawling the storefront "can request higher rate limits" and that "Signed traffic is subject to higher rate limits than anonymous traffic."

Then it lists the store's policies. Three of the five files listed a privacy policy, a terms of service and a refund policy. One listed none at all, because the shop has not published those pages. Not one of the five named a shipping or delivery policy.

Put that beside row 3 and it is the same gap twice. An assistant asked which Singapore sofa shop can deliver by next weekend has a cart endpoint, a refund policy and no lead time. A person asking on the home page has a price, the word free, and no lead time either. The machine-readable layer inherited the silence from the page.

Is llms.txt a content map? Not on these sites

Six of the ten sites returned a file at /llms.txt, and on four of them it was not a content map. On those four it was the agents.md text again, differing by exactly one line: "the canonical agent-facing description of the store is at /agents.md. You're reading /llms.txt, which mirrors that content." Shopify's documentation describes /llms.txt and /llms-full.txt as "alternate URLs that mirror the content of /agents.md by default on Shopify stores".

The other two were real maps of wildly different sizes: one of 1,173,463 bytes across 8,392 lines, with 8,385 links to its own URLs under the headings Products, Collections, Articles and Pages, and one of 43,902 bytes with 513 links and a line saying an SEO plugin generated it.

If someone has told you to add an llms.txt, check whether you already have one and read it. Our llms.txt guide for Singapore businesses argues for keeping the file modest, and these four sites are the reason: it can be present, platform-generated, and about something else entirely.

Are these sites blocking AI crawlers?

No. Across the nine robots.txt files we could read, not one named GPTBot, OAI-SearchBot, ChatGPT-User, PerplexityBot, ClaudeBot, Claude-Web, Google-Extended, CCBot, Bytespider or Applebot-Extended.

There were eleven blocks, and they all pointed backwards. Ten sat in one file, aimed at Nutch, rogerbot, mj12bot, dotbot, exabot, gigabot, BacklinkCrawler, EtaoSpider, SiteGuruCrawler and a user agent written as "polaris botnet". The eleventh blocked Nutch. These are crawlers of an older era, and nobody has revisited the files since.

Reading robots.txt tells you what the file says, not what the server does. Two of our ten sites proved it, refusing us at the door while their robots.txt invited everyone in.

What the schema and speed numbers show

Four of the eight audited home pages declared a business entity in their structured data: three an Organization, one both a LocalBusiness and an Organization. Two declared schema describing the site or its products but no business, and two declared none at all. One site, and only one, marked up questions and answers.

Mobile speed looked poor across the board, and the field data says to read that carefully. PageSpeed Insights mobile scores were 22, 29, 44, 46, 49, 50, 67 and 70 — a median of 47.5, none above 70. Laboratory LCP ran from 4.8 to 29.4 seconds, so all eight sat above the 4.0-second mark web.dev calls poor, which also puts a good LCP at "2.5 seconds or less" measured at "the 75th percentile of page loads".

Then the real-user figures arrived. Seven of the eight had Chrome field data, and six of those seven recorded a real-user LCP under 2.5 seconds: 1.07, 1.13, 1.27, 1.37, 1.72 and 2.22 seconds. The seventh was 2.95 seconds. The site with the 29.4-second lab LCP had no field data at all.

So eight of eight look broken in the lab and six of seven look fine to real visitors. That is what the two measurements are for, and it is why we tell owners to read the field data before rebuilding.

What we would do this week if we sold sofas

Three things, in this order, none needing a developer.

Put the lead time next to the price. One line per product family: in stock, delivered in 3 to 5 working days; made to order, 8 to 10 weeks. If your supplier is unreliable, publish the range and the date you last checked it.

Write a delivery page and publish it as your shipping policy. Door-to-door or lift lobby. Lift or staircase, and the staircase charge. Old-sofa removal. Public holidays. Published as a policy, it lands in the file your platform generates for agents instead of being missing from it.

Open /agents.md and /llms.txt on your own domain. If a file comes back, read it, looking for one thing: anything in it that is wrong about your shop. A missing policy list, as on one of our five, is worth closing. None of it is worth a project until the delivery page exists.

What it costs

The delivery page is the real work: an afternoon with whoever runs the lorry, and a commitment you then have to keep. Published lead times create complaints when you miss them, and that is the honest cost. Some shops will judge the complaints worse than the silence, and for a maker-to-order business with a six-month queue that may be the right call.

Rewriting the agent file is cheap in hours and, in our view, usually a waste of them. Shopify says to add your own template only for advanced requirements, and we agree. The file is not where the gap is. The gap is that nobody wrote down when the sofa arrives.

We cannot promise you anything on the AI side either. Assistants choose their own answers, and we do not know whether an agent-facing file changes a single sale today.

Method and limits — read these before quoting

  • Date and searches. All readings taken 22 October 2026, from "furniture shop singapore", "sofa shop singapore" and "mattress shop singapore".
  • Not Google. Results came from SingRank's self-hosted SearXNG metasearch. Six of its engines returned errors, so the ordering blends the engines that answered and is not Google's ranking or its shopping results.
  • Sample size. Ten sites: eight audited in full, nine with a readable home page, nine with a readable robots.txt, ten probed for /agents.md and /llms.txt.
  • Home pages only. A shop that publishes lead times on every product page but not the home page counts as a miss here. That is a real limitation of this method.
  • Raw HTML, no JavaScript. Anything a script writes after load was invisible to us, which may undercount prices and delivery text on the most heavily scripted sites.
  • Price detection is a pattern match on currency-and-digit strings in visible text, so a price inside an image was not counted.
  • Speed figures come from PageSpeed Insights as returned to our audit tool that day, lab and Chrome field data as marked.
  • No business is named, and no site in the sample is a business SingRank works for.

Want these checks run on your own product page?

Send us the one product page that should win your category's search. We will read it the way we read these nine and tell you whether a buyer can find the price, the lead time and a way to ask. Start through the contact page; the check costs nothing.

If you would rather have the work done than diagnosed, our SEO, AEO and GEO programme is S$750/month with 20 articles a month, on a 3-month minimum. Our ecommerce SEO guide for Singapore covers the catalogue side in detail.

These findings describe ten websites sampled on 22 October 2026 through metasearch. This page names no business and is not a rating of any company.

FAQ

What is an agents.md file?

It is a public file at /agents.md describing a shop to AI agents: how to browse it, how to start a checkout, and where its policies live. Shopify generates one for every store by default. Five of the ten Singapore furniture and mattress sites we probed on 22 October 2026 served one.

Do I need to write my own agents.md?

Probably not. Shopify's documentation says to add your own template only when you have advanced requirements the managed file does not cover. In our view the better use of that hour is writing the delivery information the generated file currently has nothing to point at.

Is llms.txt the same as agents.md?

On Shopify stores, by default, yes. Four of the six llms.txt files we read were the agents.md text with one line changed, and Shopify describes /llms.txt and /llms-full.txt as alternate URLs mirroring /agents.md. The other two were plugin-generated link maps.

Should a furniture shop publish delivery lead times?

We think so, as a range with the date you last checked it. One of the nine home pages we read gave any lead time, so the question a buyer is actually asking goes unanswered on eight of nine sites. The cost is real: dates you miss turn into complaints.