haseyostudio.vercel.app
1 page · 0.4s · Scanned just now
Mostly AI-generated
72% confidence
The score is a fingerprint of automation, not a quality judgment. A high score means the page reads as machine-generated. It doesn't mean the page is bad.
- Page title
- Haseyo Studio — Self-Photo Studio Premium di Batam
- Meta description
- Self-photo studio terbaik di Batam Kota. Lighting profesional, ruang privat, hasil instan. 4.8★ di Google dari 214 review. Booking via WhatsApp sekarang.
- Final URL
- https://haseyostudio.vercel.app/
- Language
- en

The page follows a textbook AI page-builder template (Hero → 4-feature grid → 4-tier pricing → testimonial → CTA) with section counter labels ([ 01 ]–[ 04 ]) and boilerplate headings. However, the Indonesian Gen-Z slang ("bebas ngakak", "feed kamu langsung naik level", "Chinggu Pack"), a real Google review count (214), a specific WhatsApp number, a real physical address, and an "Est. 2022" marker are strong human-curation signals — consistent with an AI-scaffolded page that a real business owner personalised.
- Strong signalStructure
Page follows a near-exact AI builder template: numbered feature grid then 4-tier pricing then single testimonial then CTA
Evidence- “[ 01 ] Pro-Grade Lighting … [ 02 ] Privasi Penuh … [ 03 ] Hasil Instan … [ 04 ] Solo, Duo, Crew”H3
- “[ 01 ] The Soloist … [ 02 ] Chinggu Pack … [ 03 ] The Full Box … [ 04 ] Family Portrait”H3
- “・01 Why Haseyo … ・02 Packages … ・03 Recent Frames … ・04 Words”H2
Try thisBreak the four-feature / four-pricing grid symmetry — collapse or reorder sections to reflect how customers actually discover and book the studio.
- Clear signalContent
Sole testimonial is paraphrased and unattributed, lacking the specificity of a real customer quote
Evidence- “Tempat self-photo terbaik di Batam. Hasilnya premium, harganya masuk akal, staff-nya ramah banget.”body
- “— Salah satu dari 214 review Google ・ ★★★★★”body
Try thisPull a verbatim Google review with the reviewer's first name and date instead of the composite paraphrase.
- Worth notingContent
Hero copy leans on vague aspirational phrases common in AI-generated marketing copy
Evidence- “Self-photo studio paling hype di Batam. Lighting cinematic, ruang privat 100%, dan hasil yang bikin feed kamu langsung naik level.”body
- “PrintYourVibe.”H1
Try thisAnchor the hero with one concrete differentiator — e.g. the specific room size, number of lighting rigs, or how many prints are included per session.
- Content60
Listicle structure with 4 items ([ 01 ]–[ 04 ]) each opening with a noun heading + 1-sentence pitch, but local slang ("bikin feed kamu langsung naik level", "bebas ngakak") adds human texture
- Structure80
Classic AI-builder template: numbered sections Hero → Why Us (4-icon grid) → Pricing tiers (4 cards) → Testimonial → Booking CTA, in lock-step order
- Imagery55
Only 5 images with no missing alt text; no AI-generation filenames visible, but limited imagery makes the signal ambiguous
- Tone65
Marketing-speak uniformity ("cinematic", "premium", "naik level") mixed with Indonesian Gen-Z slang ("hype", "bebas ngakak", "Chinggu Pack") suggesting AI draft with local human edit
- Words262
- Images5
- Alt coverage100%
- Internal links16
- External links8
- Schema blocks0
- HTML size29 KB
- Meta tagsMissing canonicalWhy this matters
Why it matters. Title and description are the two strings Google shows in search results. They decide whether anyone clicks. A canonical tag tells Google which URL is the source of truth when the same content lives at multiple paths.
Passing looks like. A non-empty title under 60 characters, a meta description under 160, and a self-referencing canonical link.
Fix. Add the missing tags inside the page head. Treat the title as a headline you'd want to read in a SERP, not a brand slogan.
- Heading structure1 H1, 4 H2Why this matters
Why it matters. Headings are how crawlers and assistive tech understand a page's outline. One H1 names the page. H2s break it into sections. Skipped levels and missing H1s confuse both.
Passing looks like. Exactly one H1, at least one H2, and no skipped levels (no H1 to H3 jumps).
Fix. Replace the missing or duplicate H1 with a single, descriptive heading. Promote section titles to H2. Demote sub-points to H3.
- Mobile readinessResponsiveWhy this matters
Why it matters. Google indexes mobile-first. A page without a responsive viewport renders zoomed-out on phones, fails Core Web Vitals on touch, and loses its mobile ranking.
Passing looks like. A meta viewport tag with width=device-width and a layout that reflows under 600px.
Fix. Add a viewport meta tag set to width=device-width and initial-scale=1, then audit your largest blocks at mobile widths.
- Page speed signals0.4s · 29 KBWhy this matters
Why it matters. Page weight and response time directly feed Core Web Vitals. Slow LCP and oversized HTML hurt rankings more than people expect.
Passing looks like. First-byte under 1.5s, HTML payload under 500 KB, fewer than 30 images on the initial render.
Fix. Trim render-blocking scripts, defer non-critical CSS, and serve compressed images sized to the viewport. Move heavy components below the fold.
- Schema markupNo JSON-LDWhy this matters
Why it matters. JSON-LD structured data is how you earn rich results: review stars, FAQ accordions, breadcrumbs, article cards. Skip it and Google has nothing structured to pull from when it builds your SERP card.
Passing looks like. At least one valid JSON-LD block matching schema.org types relevant to the page (Article, Product, FAQPage, Organization).
Fix. Add an application/ld+json script block describing the page. Validate with Google's Rich Results Test before deploying.
- Broken links0/5 broken in sampleWhy this matters
Why it matters. Broken internal links waste crawl budget, degrade UX, and signal to Google that the site isn't well-maintained. They also cap how deep crawlers reach.
Passing looks like. Every internal link in the sample returns 2xx or 3xx. No dead anchors, no stale paths.
Fix. Use the link list above to spot the broken paths. Either restore the missing pages or update the links to point at live URLs.
- Image alt textAll have altWhy this matters
Why it matters. Alt text is what screen readers read aloud, and what Google reads instead of pixels. Skip it and you lose on both fronts.
Passing looks like. Every meaningful image has a descriptive alt attribute. Decorative images can use alt="" to be skipped intentionally.
Fix. Audit images in /assets and CMS uploads. Write alts that describe what's in the image, not what it links to.
Every H1, H2, and H3 we found on the page, in document order.
Show heading outline
- H1PrintYourVibe.
- H2Bukan sekadar foto.Pengalaman.
- H2Pilih sesi-mu.
- H2Stories toldthis month.
- H2Sesi kamunungguin.
- H3Pro-Grade Lighting
- H3Privasi Penuh
- H3Hasil Instan
- H3Solo, Duo, Crew
- H3The Soloist
- H3Chinggu Pack
- H3The Full Box
- H3Family Portrait
We HEAD-check up to five internal links to spot broken paths quickly.
Show sampled links
Was this report useful?
Share this scan
Every CrawlRanker scan gets a public, shareable URL. Send it to a client, post it in a thread, or benchmark a competitor.
Preview scan. SEO checks are live. AI scoring is in beta.