Phuket Travels Score 산정 방식
One formula for every category, printed here from the same constants the site builds with. No editorial points, no paid placement, no adjustment by request.
Google Maps business listings via Apify, read 2026년 10월 10일 · 서비스 평가
가중치
- 공식 버전
- v2.2, 2026년 10월 20일부터
- 이전 버전
- v2.1, 2026년 10월 20일 – 2026년 10월 20일
- Google 평점(베이지안 보정)
- 40 %
- 리뷰 수(로그 척도)
- 20 %
- 웹 존재감과 프로필
- 15 %
- 도메인 권위(Ahrefs DR)
- 5 %
- 업체 사이트에 명시된 사실
- 20 %
- 평점 보정의 사전 가중치
- 리뷰 20개
- 점수 산정 최소 리뷰 수
- 리뷰 5개
- 리뷰량 상한
- 리뷰 30개 이상이면 만점
- 웹 검사(8점)
- https, hours, category, phuket, languages, socials ×2, about
- 사실 검사(동일 가중치)
- founded, registration, requisites, dbd, licence, office, prices (7); + inventory for 부동산 중개 (8)
- 가격 확인, 일부 가격
- 1점 중 0.5점
- 카탈로그 만점 기준 규모(부동산 중개업체)
- 사이트의 매물 또는 프로젝트 330개
- Domain Rating 상한
- DR 60 이상 = 구성 요소 만점
- 갱신 주기
- monthly, by script; each page shows its measurement date
- 출처
- Google Maps business listings, read through the Google Places API (first datasets of October 2026: through Apify)
버전 이력
| 버전 | 적용 기간 | 변경 내용 |
|---|---|---|
| v2 | 2026년 10월 11일 – 2026년 10월 19일 | Three signals read by scripts added to the Google data: web presence 15 %, Ahrefs Domain Rating 15 %, four facts stated on the site 10 %; review volume on a log scale against the category leader. |
| v2.1 | 2026년 10월 20일 – 2026년 10월 20일 | Five points moved from the Domain Rating (10 %) to the facts (15 %); fifth fact check added — numeric prices on the site (all 1, partial 0.5, none 0). |
| v2.2 (current) | 2026년 10월 20일 – … | Review volume capped: full marks at 30 reviews and above (log scale below), no longer relative to the category leader; five more points moved from the Domain Rating (5 %) to the facts (20 %); three fact checks added — company requisites on one page, the registration number confirmed on the DBD register, and for real estate agencies the size of the catalogue on the site (full at 330 objects). |
Version 1 (10–11 October 2026) used Google data only — 60 % rating, 25 % reviews, 15 % four Google-profile checks. Yacht charter is scored by version 3 (section 2).
1. Source and collection
Three sources, all read by scripts on dated runs, nothing typed in by hand. The Google Maps business listing — the latest read on 2026년 10월 10일 (Apify) — is the only source of who is in the table, of the rating and of the review count. The collector queries the official Google Places API (Text Search, restricted to the island's bounding box, up to 60 results per category in three pages of 20, with rating, review count, website, status, types and opening hours requested in the same call — no detail look-ups). The first datasets of October 2026 were read through the Apify Google Maps actor in two searches of 40 for the same term (province-wide and centred on the island at 7.95° N, 98.33° E), merged by place ID; a Places API run replaces a category's file whole. 435 companies are listed across 8 categories today. Permanently closed listings, advertisements and coordinates outside the island's bounding box (7.74–8.21° N, 98.24–98.46° E) are dropped before ranking.
The company's own website is the second source: for every listing whose website is not a social, messaging, directory or hosted-page platform (facebook.com, m.facebook.com, web.facebook.com, fb.com, instagram.com, wa.me, t.me, line.me, lin.ee, beacons.ai, linktr.ee, youtube.com, tiktok.com, google.com, g.co, sites.google.com, business.site, wixsite.com, linkedin.com, tilda.ws, pages.dev, lovable.app, netlify.app, vercel.app, github.io, tb.ru, wordpress.com, blogspot.com, weebly.com, webflow.io, carrd.co, 12go.asia, shorturl.at, shorturl.asia — 283 of the 435 companies today) the enricher (scripts/data/ratings-enrich.mjs) fetches the home page over HTTPS with a browser user agent, a 10-second timeout, three sites at a time and one retry, then up to two "about" / "contact" pages and up to three terms / privacy / impressum pages linked from it, and keeps only the findings the formula needs — languages, social links, whether an about page with a physical address exists, a stated founding year, a registration number, the full requisites on one page, a licence, the office, and the page each was found on — never the HTML. For real estate agencies it also reads the site's sitemap(s) and counts the catalogue. Every finding carries the date it was read (latest 2026년 10월 20일; 247 sites answered 200 over HTTPS); a site that does not answer keeps its status code and every finding false.
Ahrefs Domain Rating is the third source: the DR of the site's domain, read through Ahrefs' free domain-rating endpoint into a dated cache refreshed at most once a month (read 2026년 10월 11일; measured for 281 domains, median 2.9, 6 at or above the cap of 60). A company without a website of its own has no DR and scores 0 on authority; a site on a subdomain of somebody else's domain is not measured (the endpoint would report the parent domain) and also scores 0 — null is recorded, never a guess.
The Department of Business Development register (datawarehouse.dbd.go.th) is the fourth source, since version 2.2: for every 13-digit registration number a company prints on its site the enricher asks the public profile page — 10-second timeout, two requests at a time, a pause between them — and records only what it sees: a page stating the company's status (ยังดำเนินกิจการอยู่ = active) confirms the number; a page without a status does not; a 403, a bot-wall challenge or a timeout is recorded as "not checked" with the reason and earns nothing (today: 13 companies in the version-2.2 categories print a number, 0 confirmed, 13 not readable). Nothing is inferred from a failed look-up.
A listing must be the trade in question. The rule is a per-category pair of regular expressions printed below: include is tested against the Google categories and the listing name, exclude against the primary Google category. A villa that advertises a free airport transfer, a parking lot, an immigration office or a condominium that calls itself a coworking space never enters a company ranking. Everything left out is written to the collector's log, never to a page.
- 부동산 중개 — search "real estate agency Phuket" · include
real estate|property|realtor|estate agent· excludedeveloper|condominium|apartment|holiday home|^villa$|vacation|hotel|resort|serviced - 요트 차터 — search "yacht charter Phuket" · include
yacht|boat rental|boat charter|boat tour|sailing|catamaran|cruise agency· exclude^marina$|shipyard|port operating|event venue|event management|school$ - 공항 픽업 — search "airport transfer Phuket" · include
taxi|transfer|shuttle|transportation service|chauffeur|limousine|minibus|van rental|bus company|transportation escort· excludeparking|airport$|bus stop|bus station|car rental agency|^villa$|vacation rental|lodging|hotel|resort - 렌터카 — search "car rental Phuket" · include
car rental|car leasing|van rental· excludemotorcycle|scooter|parking - 스쿠터 대여 — search "scooter rental Phuket" · include
scooter|motorcycle rental|motorbike|bicycle rental|bike rental· excludemotorcycle shop|dealer|repair|lodging|hostel|hotel|tourist information|water sports|parking - 비자 대행 — search "visa agency Phuket" · include
visa|immigration|passport|law firm|legal|business administration|consultant· excludegovernment|embassy|consulate|language school|education|helicopter - 코워킹 스페이스 — search "coworking space Phuket" · include
coworking|shared office|office space|business center|business centre|function room· excludecafe|coffee|restaurant|condominium|apartment|hotel|travel agency - 치과 — search "dental clinic Phuket" · include
dental|dentist|orthodont|endodont|periodont|oral· exclude^hospital$
2. 요트 차터: 버전 3 (2026년 10월 19일부터)
Yacht charter is scored by version 3 of the Phuket Travels Score from 2026년 10월 19일: eight things a charter client checks before paying a deposit, 100 points in all, constants CHARTER_V3 in src/data/ratings.ts. Version 2 measured how visible a company is online — reviews, web presence, domain authority — which for a charter leaves out what the client actually needs; version 3 keeps the two Google criteria (35 points) and replaces the three web signals with six facts read from the company's own site (65 points), each stored with the page it was found on. Companies with fewer than 5 reviews, without a website of their own, or selling only per-seat group tours are listed without a score; a site that does not open on the run date (checked on both the www and the bare host) scores 0 on the six site criteria until the next run. Each criterion and the total are rounded to 0.1; ties go to the company with more reviews. Current leader (2026년 10월 10일): Horizon Cruises Phuket, 91.3 of 37 scored.
| 기준 | 배점 | 규칙 |
|---|---|---|
| Google 평점 | 20 | Google rating, shrunk towards the category mean with a prior worth 20 reviews (as in v2), then 4.0 → 0 and 5.0 → 20, never below 0 |
| Google 리뷰 | 15 | min(15; 5 · log10(reviews)) — 10 reviews → 5, 100 → 10, 1 000 and more → 15 |
| 관광 라이선스 | 15 | a Department of Tourism (TAT) licence number in the form "34/01234" printed on the company's own site → 15; not printed → 0 |
| 바트 가격 | 15 | a baht price on the page of every boat (at most one in ten in another currency) → 15; prices on part of the boats or "from" captions only → 8; no prices or a foreign currency only → 0 |
| 회사가 직접 운영하는 보트 | 10 | boats named on the site as run or operated by the company itself (on the boat's own page; a general phrase about the fleet does not count): 3 or more → 10, 1–2 → 6, none → 0 |
| 업력 | 10 | by the year stated on the site: 10 years and more → 10, 5–9 → 6, fewer → 3; no year ("20 years of experience" is not a year) → 0 |
| 언어 | 5 | site or support languages stated on the site: 3 and more → 5, 2 → 3, 1 → 1 |
| 예약 조건 | 10 | three items — what the price includes, the cancellation rule, the deposit or payment procedure: all three → 10, one or two → 5, none → 0 |
The Google-rating criterion keeps the Bayesian adjustment of version 2: the rating is first shrunk towards the category mean with a prior worth 20 reviews, then mapped 4.0 → 0 and 5.0 → 20 points, never below 0. A 5.0 on six reviews therefore does not earn the full 20 points, and no fixed review threshold is used.
The six site facts are read by scripts/data/ratings-enrich.mjs on every run: the home page (www and bare host tried in turn), the about / contact / licence / documents / terms pages linked from it and up to 25 boat pages. A licence number counts when it stands within a few lines of "TAT", "Tourism" or "licence"; a baht price when an amount with ฿, THB or บาท appears on a boat's page; a boat as run by the company when its own page says so ("our yacht", "we operate", "under our management"); a year only when it follows "since", "founded" or "established". A statement the script did not reach — in an image, a PDF, a page not linked from the home page — scores "not found" until the next run; the "add or confirm" form is the way to tell us where it is. Nothing is checked against a register and nothing is typed in by hand.
3. 버전 2.2(2026년 10월 20일부터): 요트 차터를 제외한 모든 카테고리
Score = 40 % × rating + 20 % × volume + 15 % × web + 5 % × authority + 20 % × facts, each component on a 0–100 scale, rounded to one decimal. The constants are one object in the site's code (SCORE in src/data/ratings.ts); this page prints them, the build recomputes every score from them, and no score or component is stored in the data files — the build fails if one is. Version 1 (Google data only: 60 / 25 / 15) ran on 10–11 October 2026; the version-2 line — v2, v2.1, v2.2 — is in the history table above. Version 2.2, from 2026년 10월 20일, weights the Domain Rating at 5 % and the facts at 20 % over 7 equal checks (8 for real estate agencies), and caps the review volume at 30 reviews. The rating maths is unchanged since version 1.
Rating. The Google rating shrunk towards the category mean with a prior worth 20 reviews: adjusted = (n × rating + 20 × mean) / (n + 20), where mean is the plain average of the Google ratings of the category's scored companies. The adjusted value is mapped from 1–5 to 0–100. A 5.0 on 5 reviews in a category with a mean of 4.8 becomes 4.84; a 4.8 on 400 reviews stays 4.80.
Volume. log(1 + min(n, 30)) / log(1 + 30) × 100: a log scale up to 30 reviews, where the component is full — 5 reviews earn 52 %, 10 earn 70 %, 20 earn 89 %, 30 and more earn 100 %. Thirty reviews are enough to trust a rating; above that the count measures size and age, which the other components already cover. Until version 2.1 the scale ran to the most-reviewed company of the category (nmax), so one listing with thousands of reviews compressed every other company.
Web presence and profile. 8 points, scaled to 0–100: website of its own answering 200 over HTTPS; opening hours on Google; Google category is the trade; address on Phuket; site in ≥ 2 languages; links to social profiles (up to 2 points) (2 points); about/contact page with a physical address. "Website of its own" means a domain that is not a platform page; "answering" means the home page returned HTTP 200 over HTTPS on the read date. Languages are read from <html lang>, hreflang alternates and language-switch links; social links count one point for the first profile and one for the second (Facebook, Instagram, LinkedIn, YouTube, Line); the about/contact point needs both a page and a Phuket address on it. The hours, category and address checks are the same Google-listing checks as in version 1, so a company without a website still earns up to 3 of the 8 points. The domain Google shows is printed in every case, as text — this site links out only from its sources page.
Authority. min(DR, 60) / 60 × 100, where DR is the Ahrefs Domain Rating of the site's domain. The cap keeps a global brand's domain (DR 80 and above) from outscoring an established local firm: at 60 the component is full. No website of its own, or a site on a hosted subdomain → 0.
Facts. 7 equal checks of what the company states on its own site (8 for real estate agencies), 14.3 points each (12.5 for agencies): founded ≥ 3 years before the read; Thai company registration number or "Co., Ltd." on the site; the full requisites — legal name, 13-digit registration number and a postal address with a postal code — together on one page; the registration number found on the site confirmed on the DBD register (not readable → not checked, no point); licence / association of the trade named on the site; the office Google lists is named on the site; numeric prices on the site — agencies: ≥ 10 priced listings on the catalogue pages, other trades: ≥ 3 prices on the price / services pages = 1 point, fewer = 0.5, none = 0; real estate agencies only: the catalogue on the site — unique property / project URLs in the sitemap or the counter on the catalogue page — min(1, count / 330). The founding year is the earliest year after "since", "established", "founded" (or the Russian / German / French equivalents) on the pages read, and earns the point only when it is at least 3 years before the read date. The registration check looks for a 13-digit Thai juristic-person number (0…) or a "Co., Ltd." / "Company Limited" / บริษัท … จำกัด in the text. The licence check looks for a licence number, a TAT licence, or the authority / association of the trade — REBA or the Thai Real Estate Association for agencies, the Marine Department for charters, the Department of Land Transport for transfers and rentals, the Lawyers Council for visa agencies, the Dental Council or a clinic licence for dentists. The office check looks for the postal code, or the district with "Phuket" and a street token, of the address Google lists. The price check (from 2026년 10월 20일) reads the home page and up to five pages where a company would publish what it charges — for real estate agencies the catalogue and listings pages linked from the home page, for the other trades the price, rates, services, fleet or packages pages — and counts the distinct amounts in baht or US dollars (฿, THB, บาท, baht, $, USD next to a number of at least three digits): an agency with ten or more priced listings, or a service company with three or more prices, earns the full point; one to nine (one or two) earn half; a site with no numeric price earns nothing, and so does a site that opened but keeps its prices in images, PDFs or behind a form (today: 110 of the 204 sites read in the version-2.2 categories publish prices in full, 30 in part). The requisites check (from 2026년 10월 20일) needs three things together on one page — the legal name ("Co., Ltd.", "Limited", บริษัท … จำกัด), the 13-digit registration number, and a postal address with a postal code — on the home page, an about / contact page or a terms / privacy / impressum page linked from the home page (today: 10 of 204); a number in the footer and the address on another page does not count, because a reader checking the company should find it in one place. The DBD check (from 2026년 10월 20일) asks the Department of Business Development register for that number and earns the point only when the register answers with the company's status; when the register is not readable by scripts the check is recorded as not made and nothing is inferred. The catalogue check (from 2026년 10월 20일, real estate agencies only) counts the property and project pages the site publishes — unique URLs in the sitemap whose path names a property, villa, condo, project, listing, sale, rent or catalogue (locale prefixes and pagination removed), or the counter printed on the catalogue page, whichever is larger — and earns min(1, count / 330) (today: 35 of 46 agency sites read have a countable catalogue, median 139, largest 11,909). A fact that is not on the site is false — "not found on site" — and nothing is inferred from elsewhere.
Unrated. A company with fewer than 5 reviews, or without a Google rating, is listed at the end of its category without a score, ordered by review count, so that the list is complete without letting three opinions outrank four hundred.
4. What each signal does not measure
Google reviews can be solicited and occasionally bought; the Bayesian prior and the log scale limit what a burst of new reviews can do, they do not detect it. Domain Rating measures a backlink profile, not the quality of a service — an old, well-linked domain belongs to a company that has been visible for years, which is all the component claims. The web checks measure whether a company publishes a working, multilingual, reachable site with an address, not whether the service behind it is good; a single-language site can be an excellent business. The facts component reads statements, not registries: a registration number on a page is a statement the company chose to publish, which this site does not verify against the Department of Business Development, and a company that keeps its imprint on a page the enricher did not reach (a PDF, an image, a page not linked from the home page) scores "not found" — the "add or confirm" form is the way to tell us where it is, and the next run reads the site again. Scripts also fail: a site behind a bot wall answers 403 and is scored as not answering until it does. All of this is why the three new components are worth 40 % together and the Google rating and reviews still carry 60 %.
5. Companies related to the publisher
This site is published by the company behind Layan Real Estate, a Phuket agency, and its yacht catalogue (/yachts) is operated by Horizon Cruises Phuket, a company in the yacht charter category. Both are declared here, flagged in the data by website domain and name, disclosed in prose on their category page and company page (the publisher's agency is an ordinary row of its table, without a badge; the catalogue operator carries a mark in the yacht charter table), and scored by the same function as every other company; no company pays for its place. The collector searches for them by name on every run, so they cannot be "forgotten" — and nothing is scored by hand: a listing without the minimum number of reviews stays unrated, whatever its relation to us.
One company, several Google listings. Google Maps sometimes carries one office twice — under a former trading name and under the current one. For a company declared on this page the declaration may list the other names (aliases) and the Google place IDs of those listings; the collector then merges every listing that matches the declaration into one row named after the declared company, on every run. The row's Google rating, review count and address are those of the listing with the most reviews; every listing is kept in the data with its own rating, review count and ID and is printed on the company page; the website, Domain Rating and facts are read from the first declared domain; a second profile adds nothing to the score. The merge is allowed only for companies whose listings are declared publicly here — no other company's listings are ever combined — and the build fails if a declared company appears in two rows or a merged row carries an undeclared listing.
- Layan Real Estate — owned by the publisher (layanre.com, villacarte.com; also listed by Google as VillaCarte; declared place IDs ChIJ5VLohF0xUDARokbteGDYk8Y). Agency founded by the publisher's founder; the long-stay lead form on this site is handled by it. Until 4 September 2026 the agency traded as VillaCarte (the VillaCarte brand stayed with the developer group), so Google Maps carries two listings of the same office: the older one under the former name VillaCarte (2/1 Thungkhar Rd., Talat Yai) and the Layan Real Estate profile created on 11 October 2026. Both are declared here and merged into one row by the collector; the Google rating and review count come from the listing with more reviews, the website checks read layanre.com. Searched by name on every collection run. Listed in 부동산 중개 at rank 1 of 48 (2026년 10월 10일) as one row built from 2 Google listings: VillaCarte — 4.8 on 50 reviews (primary); Layan Real Estate — no reviews yet.
- Horizon Cruises Phuket — operator of the yacht catalogue on this site (horizoncruisesphuket.com). Operates the yacht catalogue on this site (/yachts): every boat there is chartered through it, and yacht requests from this site go to it. No money changes hands for the listing or the ranking; it is scored by the same formula as every other company in the category. Listed in 요트 차터 at rank 1 of 37 (2026년 10월 10일).
6. Cadence and corrections
The collector runs monthly and the enricher runs after it (websites re-read every run, the DR cache refreshed at most once a month); every page prints the dates of the reads it was built from, and the raw dumps of each run are kept so a ranking can be re-derived without a new read. A company that writes through the "add or confirm" form is searched for by name on the next run — nothing is added, removed or moved by request. Ratings and review counts move between runs, and so do positions; a score is a dated measurement, not a permanent grade. Across the eight categories 63,761 Google reviews stand behind the current tables.
What the score is not: a quality audit, a licence verification or a recommendation. Read the table as a shortlist, the components as where a position comes from, and the reviews as what they are.
자주 묻는 질문
Why a Bayesian adjustment instead of the raw Google rating?
Because on Phuket most listings sit at 4.7–5.0 and a new company with three five-star reviews would otherwise outrank one with 4.8 on four hundred. The adjusted rating is (n × rating + 20 × category mean) / (n + 20): with few reviews it stays near the category mean, with many it converges on the company's own rating.
Why is review volume on a log scale, and why capped?
So that a listing with thousands of reviews does not take the whole 20 points and everyone else nothing. Since version 2.2 the scale runs to 30 reviews and stops there: log(1 + min(n, 30)) / log(1 + 30) × 100, so 5 reviews earn 52 % of the component, 15 earn 81 % and 30 or more earn all of it. 30 reviews are enough to trust a Google rating; beyond that the count measures how long and how big a company is, which the other components already cover. Until version 2.1 the scale ran to the most-reviewed company of the category, which compressed every smaller company behind one large listing.
Why does yacht charter use a different formula?
Because version 2 measures visibility — reviews, web presence, domain authority — and a charter client needs other things before paying a deposit: a tourism licence number, a baht price for the boat, who actually runs it, how long the company has been around, and published booking terms. Version 3 (from 2026년 10월 19일) scores those six facts from the company's own site with 65 of the 100 points and keeps the Google rating and review count at 35. The other categories stay on version 2 until a comparable set of checkable facts exists for them.
Why did the formula change?
Because each version moved weight from what is easy to accumulate towards what a company has to state and can be checked. Version 1 (10–11 October 2026) used Google data only: 60 % rating, 25 % reviews, 15 % four Google-profile checks. Version 2 (2026년 10월 11일 – 2026년 10월 19일) kept the rating and volume maths at 40 % and 20 % and added three signals that scripts verify without hands: 15 % web presence (8 points), 15 % the Ahrefs Domain Rating capped at 60, 10 % four facts stated on the company's own site. Version 2.1 (2026년 10월 20일) moved five points from the Domain Rating to the facts and added a fifth fact, numeric prices on the site. Version 2.2 (from 2026년 10월 20일) caps the review volume at 30 reviews instead of scaling it to the category leader, moves five more points from the Domain Rating (now 5 %) to the facts (now 20 %), and adds three checks — the full requisites on one page, the registration number confirmed on the DBD register, and for real estate agencies the size of the catalogue on the site (full at 330 objects) — so that a company which says who it is, publishes what it charges and shows what it sells is rewarded over one that only collects reviews and links. The full table is in the version history above. A company without a website of its own scores 0 on the three site-based components and stays in the table.
Does a high Domain Rating mean a good company?
No. DR measures the strength of a domain's backlink profile on Ahrefs' 100-point logarithmic scale — how many and how strong the sites linking to it are. It says the business has been online long enough, and visibly enough, to be referenced; it says nothing about the service. That is why it is one of five signals, capped at 60, and worth 5 % since version 2.2 (15 % in version 2, 10 % in 2.1), and why a global brand's domain cannot outscore a well-reviewed local firm on it alone.
Can the publisher move its own agency up?
No. Layan Real Estate and Horizon Cruises Phuket are declared on this page as related to the publisher, flagged in the data by website domain or name, and scored by the same function as everyone else; their rows and pages carry no badge or separate block. The build fails if a company carries the flag without being declared, or is declared without the flag.
Why does Layan Real Estate have one row when Google Maps lists two profiles?
Because they are two listings of one office. The agency traded as VillaCarte until September 2026 and Google still carries that listing under the former name (with its rating and reviews); the Layan Real Estate profile was created on 11 October 2026. Both are declared — name, domains and place ID — in the site's configuration, printed in section 5 of this page, and the collector merges every listing that matches a declaration into one row named after the declared company: the Google rating and review count come from the listing with the most reviews, every listing is kept with its own figures, and the website checks read the declared domain. The second profile adds nothing to the score. No undeclared company is ever merged, and the build fails if a declared company appears in two rows.
What is not in the score?
Reviews from other platforms, the level of prices (only whether numeric prices are published on the site counts, never whether they are high or low), the quality of a catalogue (only its size on the site counts), editorial opinion, our own experience, and anything typed in by hand. The facts component reads what a company states on its own site and counts a fact that cannot be found as not found; the one register it asks is the Department of Business Development, for the registration number printed on the site, and when the register does not answer the check is recorded as not made rather than guessed. Hand-recorded profile notes (languages, fleet, listings) are shown dated where we have them and do not change the score.