AI-powered food waste monitoring for professional kitchens. WordPress + Divi, NitroPack, WPML (EN/NL/FR/DE/ES), WP Engine, Cloudflare.
Strong client base and international presence undercut by schema gaps, performance issues, and a broken hreflang implementation. ~20 hours of focused technical work could realistically push this to 72–75.
Fix immediately — these block correct indexing or international targeting.
WPML is configured for 5 languages but zero <link rel="alternate" hreflang> tags appear in any page HTML. Sitemap hreflang lags by days. A page read in isolation by Googlebot has no language signal.
Fix: Enable in-page hreflang in WPML → Language Switcher → "Add hreflang in <head>". Retain sitemap hreflang as secondary.
Crawl-delay: 10 appears on line 1 before any User-agent: block — invalid per spec. Two separate User-agent: * blocks and duplicate Disallow directives.
User-agent: * Disallow: /wp-content/uploads/wpforms/ Disallow: /*?et_blog Sitemap: https://orbisk.com/sitemap_index.xml
dipi_cpt_category-sitemap.xml lists 25 URLs (5 languages) that all return noindex, nofollow. Google explicitly states: do not include noindex pages in sitemaps. Wastes crawl budget and sends contradictory signals.
Fix: Yoast SEO → Settings → Content Types → exclude the dipi_cpt_category taxonomy from the sitemap.
GPTBot, ClaudeBot, PerplexityBot, CCBot, Google-Extended — none are mentioned. All AI scrapers have unrestricted access to proprietary case studies, product content, and commercial pages.
User-agent: GPTBot Disallow: / User-agent: CCBot Disallow: /
The core AI SaaS product has zero SoftwareApplication or Product structured data anywhere on the site. This is the single largest schema gap and directly blocks App rich results in Google Search.
Fix: Add SoftwareApplication JSON-LD to product and how-it-works pages. Ready-to-use schema blocks available on request.
Fix within 1 week — significant ranking and conversion impact.
The homepage hero is a raw MP4 served from origin with no preload hint. fetchpriority="high" is misassigned to the navigation logo. Estimated LCP: 3.5–4.5s on mobile (threshold: 2.5s).
Fix: Add <link rel="preload" as="video"> in <head> for the MP4. Better: replace hero video with a static WebP image; play video only after LCP fires. Reassign fetchpriority to hero element.
Every image is PNG or JPG — NitroPack's format conversion is not enabled. 39 images have no width/height attributes, causing layout shift (CLS) as the browser can't reserve space.
Fix: Enable 'Convert to WebP/AVIF' in NitroPack → Image Optimization. Add explicit width and height to all images, especially the 10+ brand logo bar images.
X-Frame-Options, X-Content-Type-Options, Content-Security-Policy, and Referrer-Policy are all absent. X-Powered-By: WP Engine is served, disclosing the hosting stack.
Fix: Add via Cloudflare Transform Rule: X-Content-Type-Options: nosniff, X-Frame-Options: SAMEORIGIN, Referrer-Policy: strict-origin-when-cross-origin. Remove X-Powered-By.
Four YouTube videos are embedded on the homepage with no VideoObject schema. These are immediately eligible for Video rich results in Google Search and Google Discover.
Fix: Add VideoObject JSON-LD for each video with name, description, thumbnailUrl, uploadDate, duration, contentUrl, and embedUrl properties.
All blog posts show 'by Hakon Kleppe' with no bio, credentials, or LinkedIn link anywhere. Google's QRG scrutinizes author authority for content in specialised domains.
Fix: Create author bio pages for each contributor with Person JSON-LD (jobTitle, url, sameAs LinkedIn). Link all posts to their author page.
Once Divi's triplicated nav/footer is stripped, the homepage has ~470 words of unique body copy. Key buyer terms ('CSRD reporting', 'ESG food waste', 'food waste ROI') appear only once.
Fix: Expand to 700+ words with a market problem section, a CSRD/ESG relevance block, and a sourced ROI claim paragraph.
/newsletter/, /brochure/, /food-waste-ebook/, /try-orbisk/, and three /get-started-*/ pages are indexed and in the sitemap. Thin conversion pages dilute the site's content quality signal.
Fix: Add <meta name="robots" content="noindex, follow"> to all thin lead-gen form pages. Remove from sitemap in Yoast.
NL and FR category slugs for 'Success Stories' are cross-assigned in the sitemap: hreflang="fr" points to a NL-language URL and vice versa. Google follows these, lands in the wrong language, and demotes the signal.
Fix: In WPML, go to the 'Success Stories' category translation and reassign NL/FR hreflang targets correctly. Regenerate the sitemap.
'Up to 70% reduction', '12x ROI', '4.5 kg CO2 per kg food waste', '7,000 liters water' — none have a linked source. AI citation engines require a traceable citation chain to include content in cited answers.
Fix: Add footnotes or inline links to FAO, WRAP, IPCC, or Orbisk's own published methodology for all quantified claims.
Fix within 1 month.
| Issue | Fix |
|---|---|
| TTFB 1.31s even from cache; Cache-Control: max-age=600 | Extend cache TTL to 86400. Configure Cloudflare Cache Rule to cache HTML at edge (currently DYNAMIC). |
| user-scalable=0 in viewport meta | Remove maximum-scale=1.0, user-scalable=0 from Divi Theme Options → General → Mobile. Fails WCAG 1.4.4. |
| About page too thin (~320 words, no founding story) | Rebuild to 800+ words with founding narrative and timeline. Most scrutinised page in Google's QRG. |
| German: 8 blog posts vs 59 EN | Expand DE content or define as limited-investment market. Add /de/blog/ index to sitemap. |
| Organization schema missing foundingDate, address, contactPoint | Update Yoast Organization settings with legalName, description, areaServed, contactPoint. |
| Logo in Organization schema too large (500×385px; max 112px tall) | Resize schema logo to ≤600px wide, ≤112px tall. May suppress Knowledge Panel logo otherwise. |
| No AggregateRating schema despite G2 ratings on-page | Add AggregateRating nested in Product schema once G2 figures are confirmed. |
| No physical address or KvK number in footer | Add registered address and Dutch Chamber of Commerce number to footer. Required for GDPR. |
| Blog posts 600–900 words; B2B standard is 1,500+ | Expand pillar posts to 1,500–2,000 words minimum. |
| Animated GIF used for Orbisk-AI section | Replace Orbisk-AI.gif with looping <video autoplay loop muted playsinline> in WebP/MP4. GIFs are 5–10× larger. |
| WP REST API endpoint advertised in every page's Link header | remove_action('template_redirect', 'rest_output_link_header', 11) in functions.php. |
| RSS feeds publicly indexed | Add X-Robots-Tag: noindex to feed responses, or disable in Yoast. |
| 429 KB HTML due to ~197 KB Divi inline CSS | Extract critical CSS in Divi Performance settings. Audit and disable unused Divi modules site-wide. |
| /cruise-liners/ has no multilingual alternates | Either translate or accept as EN-only and remove orphaned x-default self-reference. |
| Page | Est. words | Issue |
|---|---|---|
| /about-orbisk/ | ~320 | No founding narrative, no sourced expertise claims |
| /product/how-it-works/ | ~280 | No technical depth, no integrations, no accuracy data |
| /impact/ | ~350 | Stats lack citations; no methodology for live counter |
| Homepage (body only) | ~470 | Below 500-word floor after nav stripped |
| Blog posts | 600–900 | Below 1,500-word B2B blog standard |
Vs. competitors Leanpath, Winnow, Wasteless.
| Content Gap | Impact | Effort |
|---|---|---|
| Comparison pages (Orbisk vs Winnow, Orbisk vs Leanpath) | High | Medium |
| Food Waste Statistics resource hub with FAO/WRAP citations | High | Low |
| Pricing / tier transparency page | High | Low |
| Integrations / compatibility page (POS, ERP, CSRD tools) | High | Medium |
| Security / data compliance page (GDPR, ISO, data residency) | Medium | Low |
| Interactive ROI calculator on homepage | Medium | Low |
| Downloadable white papers and ROI PDF | Medium | Medium |