OrcLink and Ruler Analytics
Feature by feature
Ruler's column: As of October 2026, from Ruler's public documentation (recorded in OrcLink's parity requirements of 4 October 2026).Each row cites the row of that record. OrcLink's column: this release.
- Built: in this release.
- Built, not yet tested live: built and tested with sample data; not yet run against a live account of the vendor it connects to.
- Coming soon / Not built: not available in this release.
Visitor tracking
| Capability (as Ruler describes it) | Ruler | OrcLink |
|---|---|---|
| First-party JS tag on all pages, subdomains, iframes | In Ruler's documentationRecord 4.1 row 1 | Built/t.js on your own tracking subdomain; iframe forms on verified domains |
| Install by GTM, CMS; SPA variant | In Ruler's documentationRecord 4.1 row 2 | Built, not yet tested liveSnippet, single-page apps and two GTM templates; the templates are not yet checked in a live Tag Manager container |
| Consent-manager variant (CookieYes) | In Ruler's documentationRecord 4.1 row 3 | BuiltCookieYes, OneTrust, Cookiebot, Google Consent Mode v2, IAB TCF, Global Privacy Control |
| Visitor ID, 12-month cookie, multi-session | In Ruler's documentationRecord 4.1 row 4 | BuiltVisitor and session ids, except in strict consent mode (no visitor cookie) |
| Visitor ID readable from JS and written to forms / CRM | In Ruler's documentationRecord 4.1 row 5 | Builtwindow.orc, a hidden click-id field and data-orc-field form fields |
| Cross-domain tracking | In Ruler's documentationRecord 4.1 row 6 | BuiltSelf-serve: add each site's tracking subdomain under Domains |
| Non-PII matching (visitor id, GA4 client id, own order or lead id) | In Ruler's documentationRecord 4.1 row 7 | BuiltClick id, orc.identify with your order or lead id and the GA4 client id (stored as a keyed hash) |
| Marketing variables (first and last click source, landing page, keyword, UTMs, referrer, click ids) | In Ruler's documentationRecord 4.1 row 8 | BuiltFirst and last click variables for forms and your CRM |
| Source rules per channel, custom sources, custom source parameter | In Ruler's documentationRecord 4.1 row 9 | BuiltBuilt-in rules, your own rules and the orc_source parameter, with a test box |
| URL tagging guides per ad platform | In Ruler's documentationRecord 4.1 row 10 | BuiltTwelve tagging guides and a URL builder that refuses personal data |
| Direct traffic and unassigned traffic reports | In Ruler's documentationRecord 4.1 row 11 | BuiltAttribution > Direct & unassigned |
| SmartFill | In Ruler's documentationRecord 4.1 row 12 | BuiltModelled fill: off by default, always labelled modelled, with the unmatched count next to it |
| No lookback limit | In Ruler's documentationRecord 4.1 row 13 | BuiltThe retention setting includes "no time limit" (not in HIPAA mode); journeys look back as far as the workspace keeps data |
| Shopify customer-events pixel | In Ruler's documentationRecord 4.1 row 14 | BuiltShopify pixel and app |
Call tracking
| Capability (as Ruler describes it) | Ruler | OrcLink |
|---|---|---|
| Dynamic number insertion, per-visitor number from a pool | In Ruler's documentationRecord 4.2 row 1 | Built, not yet tested liveNumber pools on Twilio; not yet tested on a live Twilio account |
| Number wrap by CSS class, per-location classes, href + text swap | In Ruler's documentationRecord 4.2 row 2 | Built, not yet tested liveorc-tel and orc-tel-<name> classes; text and tel: link swapped |
| Static (offline) numbers for print, billboard, ad extensions | In Ruler's documentationRecord 4.2 row 3 | Built, not yet tested liveStatic numbers with a fixed source |
| Call forward to the real number | In Ruler's documentationRecord 4.2 row 4 | Built, not yet tested liveTwilio forwards to the pool's target number |
| Call recording and playback | In Ruler's documentationRecord 4.2 row 5 | Built, not yet tested liveOff by default; locked in HIPAA mode without a telephony BAA |
| Number porting | In Ruler's documentationRecord 4.2 row 6 | Built, not yet tested livePort requests tracked in the app |
| Keyword-level call attribution | In Ruler's documentationRecord 4.2 row 7 | Built, not yet tested liveA pool call joins the visit that held the number, so it has that visit's click and keyword |
| Call variables (caller number, result, start, end, duration, answer delay, dialed number, label) | In Ruler's documentationRecord 4.2 row 8 | Built, not yet tested liveCaller number kept as a hash and last 4 digits unless you turn the full number on (never in HIPAA mode); every call source is not yet tested live |
| Ingest from CallRail, CallTrackingMetrics, Invoca, Infinity | In Ruler's documentation or listed by RulerRecord 4.2 row 9 | Built, not yet tested liveWebhook adapters; field names not yet checked on live deliveries |
| Ingest from Delacon | Listed by RulerRecord 4.2 row 10 | Built, not yet tested liveWebhook adapter |
| Call events trigger CRM, ad upload, reports | In Ruler's documentationRecord 4.2 row 11 | Built, not yet tested liveCalls reach reports, ad platforms (stage relay, with approval) and webhooks. Writing call events to a CRM is not built |
| Transcription, AI call scoring | Third-party mention onlyRecord 4.2 row 12 | Built, not yet tested liveTranscription of recorded pool calls with keyword tags (off by default, never in HIPAA mode), and an optional AI summary and qualified-lead score; Twilio Voice Intelligence and the live AI API not yet tested |
Forms, chat, ecommerce, bookings
| Capability (as Ruler describes it) | Ruler | OrcLink |
|---|---|---|
| Manual conversion call from JS with a flat payload | In Ruler's documentationRecord 4.3 row 1 | Builtorc.trackConversion |
| Thank-you page tracking, URL-parameter capture | In Ruler's documentationRecord 4.3 row 2 | BuiltThank-you page rules |
| Submit-button and on-click event tracking | In Ruler's documentationRecord 4.3 row 3 | BuiltClick event rules (phone and email links) |
| Iframe forms (4 methods) | In Ruler's documentationRecord 4.3 row 4 | Built, not yet tested liveScript inside the frame, vendor messages, thank-you pages, trackConversion; vendor messages not yet checked on live embeds |
| GTM form tracking | In Ruler's documentationRecord 4.3 row 5 | Built, not yet tested liveGTM conversion template; not yet checked in a live container |
| Guides: Gravity Forms, Elementor, Webflow, Ninja Forms, Instapage, GoHighLevel, Wix, HubSpot Forms, Calendly, Unbounce | In Ruler's documentationRecord 4.3 row 6 | Built, not yet tested liveOne guide per builder, tested against a copy of each builder's markup, not yet on live pages |
| Form test tool | In Ruler's documentationRecord 4.3 row 7 | BuiltCapture > Test tool |
| Live chat: Tawk | In Ruler's documentationRecord 4.3 row 9 | Built, not yet tested liveChat start or pre-chat form; never messages |
| Live chat: Drift, Intercom, LiveChat, Olark, Pure Chat, Zoho SalesIQ | Listed by RulerRecord 4.3 row 10 | Built, not yet tested liveSame capture as Tawk |
| Shopify pixel + Shopify app | In Ruler's documentationRecord 4.3 row 11 | Built |
| WooCommerce, BigCommerce, Magento | Listed by RulerRecord 4.3 row 12 | Built, not yet tested livePlugin, checkout script and module; not yet installed on real stores |
| Booking engines (on-site confirmation + CSV / webhook / API reconcile on order id, email, phone) | In Ruler's documentationRecord 4.3 row 13 | BuiltThrough the generic paths (confirmation page capture, revenue API, CSV) with a guide for SynXis, Roller, BookNow and AXS; no native integration |
CRM and revenue
| Capability (as Ruler describes it) | Ruler | OrcLink |
|---|---|---|
| Native CRM: Salesforce, HubSpot, Pipedrive, Zoho, Microsoft Dynamics, ActiveCampaign, Capsule, Insightly, SugarCRM | In Ruler's documentationRecord 4.4 row 1 | Built, not yet tested liveReads stages into outcomes; not yet tested against live CRM accounts |
| GoHighLevel, Monday.com, bespoke CRM | Listed by RulerRecord 4.4 row 2 | Built, not yet tested liveGoHighLevel and monday.com adapters; any other CRM through the API or the inbound webhook |
| Find and enrich: write source, campaign, landing page, click ids to CRM custom fields | In Ruler's documentationRecord 4.4 row 3 | Built, not yet tested liveWrite-back for GoHighLevel, HubSpot, Salesforce, Pipedrive, Zoho CRM, Dynamics 365 and ActiveCampaign (empty fields only by default); not available yet for Capsule, Insightly, SugarCRM and monday.com |
| Field mapping (close date, email, phone, value, label, currency) | In Ruler's documentationRecord 4.4 row 4 | BuiltColumn mapper (CSV), field mapping (webhook), CRM field map |
| Revenue / Opportunity API (PUT) | In Ruler's documentationRecord 4.4 row 5 | BuiltPUT /api/v1/revenue and /api/v1/opportunities |
| Inbound webhook from any CRM | In Ruler's documentationRecord 4.4 row 6 | Built |
| CSV upload in app; scheduled SFTP / FTP | In Ruler's documentationRecord 4.4 row 7 | BuiltCSV upload with dry run and undo; scheduled import from SFTP, S3 or HTTPS (not plain FTP) |
| Currencies GBP, EUR, USD, CAD, NZD, SGD, ZAR, AUD | In Ruler's documentationRecord 4.4 row 8 | BuiltPer-currency amounts with ECB rates for a reporting currency |
| Opportunity stages by source (MQL, SQL, opportunity) | In Ruler's documentationRecord 4.4 row 9 | BuiltStage dictionary per workspace |
| Offline conversions (events, SDR, in-store) matched to journey | In Ruler's documentationRecord 4.4 row 10 | Built |
| Payments: Stripe | Listed by RulerRecord 4.4 row 11 | Built |
| Payments: Chargebee, ChartMogul, Recurly, Xero | Listed by RulerRecord 4.4 row 12 | Built, not yet tested liveChargebee, ChartMogul and Recurly; Xero is coming soon |
Attribution and reporting
| Capability (as Ruler describes it) | Ruler | OrcLink |
|---|---|---|
| Models: first touch, last click, linear, time decay, position-based | In Ruler's documentationRecord 4.5 row 1 | Built |
| U-shaped, W-shaped, full path, custom | Third-party mention onlyRecord 4.5 row 2 | Built |
| Data-driven attribution (Markov chains) | In Ruler's documentationRecord 4.5 row 3 | BuiltLabelled modelled; it shares credit by how journeys look and is not causal |
| Impression attribution (view-through from platform impression data) | In Ruler's documentationRecord 4.5 row 4 | BuiltLabelled modelled, shown apart from credited numbers |
| Combined DDA + impression model | In Ruler's documentationRecord 4.5 row 5 | BuiltLabelled modelled |
| Ad cost import: Google Ads, Meta, Reddit, StackAdapt | In Ruler's documentationRecord 4.5 row 6 | Built, not yet tested liveBy API, once a day while the scheduled jobs ad-spend and jobs run (your OrcLink operator schedules them); not yet run against live ad accounts |
| Cost for Microsoft, TikTok, LinkedIn and CSV | Listed by RulerRecord 4.5 row 7 | Built, not yet tested liveBy API, and CSV upload for any platform |
| ROI, CPA, ROAS by channel, campaign, keyword | In Ruler's documentationRecord 4.5 row 8 | BuiltPer currency, never a mixed sum |
| Visitor-level journey view, unsampled | In Ruler's documentationRecord 4.5 row 9 | Built |
| Advanced segmentation, custom segments | In Ruler's documentationRecord 4.5 row 10 | Built |
| Campaign groups (brand, non-brand, PMax, prospecting, retargeting, shopping) | In Ruler's documentationRecord 4.5 row 11 | Built |
| Opportunity report, revenue forecast | Listed by RulerRecord 4.5 row 12 | Built |
| Cohort / LTV | Third-party mention onlyRecord 4.5 row 14 | Built |
Ad platform sync
| Capability (as Ruler describes it) | Ruler | OrcLink |
|---|---|---|
| Google Ads offline conversions (GCLID, GBRAID), enhanced conversions for leads | In Ruler's documentationRecord 4.6 row 1 | BuiltData Manager API, through the approval gate |
| Google events per type: phone call, opportunity stage, revenue | In Ruler's documentationRecord 4.6 row 2 | Built, not yet tested liveStage relay per event type |
| Meta Conversions API (hashed email, phone, fbclid) | In Ruler's documentationRecord 4.6 row 3 | Built |
| Microsoft Ads offline conversions (MSCLKID) + enhanced conversions | In Ruler's documentationRecord 4.6 row 4 | Built, not yet tested live |
| OpenAI Ads Conversions API | In Ruler's documentationRecord 4.6 row 5 | Built, not yet tested live |
| Reddit Conversions API | In Ruler's documentationRecord 4.6 row 6 | Built, not yet tested live |
| LinkedIn, TikTok | Listed by RulerRecord 4.6 row 7 | Built |
| Snapchat, X, Pinterest, Amazon, StackAdapt, The Trade Desk, CM360 / DV360 / SA360, MNTN, Spotify | Listed by RulerRecord 4.6 row 8 | Built, not yet tested liveSnapchat, X, Pinterest, CM360 / SA360 built; Amazon, StackAdapt and The Trade Desk coming soon; MNTN and Spotify not built |
| Value-based bidding (revenue values in upload) | In Ruler's documentationRecord 4.6 row 9 | Built |
Integrations and data out
| Capability (as Ruler describes it) | Ruler | OrcLink |
|---|---|---|
| Outbound webhooks: new form, chat, call, opportunity, revenue | In Ruler's documentationRecord 4.7 row 1 | BuiltSigned, with a delivery log |
| Zapier | In Ruler's documentationRecord 4.7 row 2 | Built, not yet tested livePrivate Zapier app; not yet published to Zapier |
| GA4 events (near real time) | In Ruler's documentationRecord 4.7 row 3 | Built, not yet tested liveMeasurement Protocol |
| Looker Studio (via GA or auto-filled Google Sheet) | In Ruler's documentationRecord 4.7 row 4 | Built, not yet tested liveA community connector for report rows and ad spend, and a Google Sheets export of one report view once a day while the scheduled jobs export and jobs run (your OrcLink operator schedules them), which Looker Studio can read; neither yet run against live Google accounts |
| Public API | In Ruler's documentationRecord 4.7 row 5 | BuiltRead and write, documented at /docs/api |
| BigQuery, Snowflake, Redshift, S3, PostgreSQL, MS SQL Server | Listed by RulerRecord 4.7 row 6 | Built, not yet tested liveExport to S3, BigQuery, PostgreSQL and SQL Server (2022 / Azure SQL) once a day while the scheduled jobs export and jobs run (your OrcLink operator schedules them); Snowflake and Redshift through a generated script over the S3 export; CSV files, no Parquet |
| SNS, SQS | Listed by RulerRecord 4.7 row 7 | Built, not yet tested liveThe webhook events as SNS or SQS messages |
| Looker, Tableau, Power BI, Domo | Listed by RulerRecord 4.7 row 8 | BuiltThrough the warehouse export, or guides on the read API with Power BI queries and a CSV script |
| Klaviyo, Marketo | Listed by RulerRecord 4.7 row 9 | Built, not yet tested liveLead source to the Klaviyo profile / Marketo lead, and an event or activity per lead and chosen stage |
| Whatagraph, Awin | Listed by RulerRecord 4.7 row 10 | Built, not yet tested liveWhatagraph: a guide on the read API. Awin: its click id and the Affiliate (Awin) channel; no conversion upload to Awin |
Marketing mix modelling and AI
| Capability (as Ruler describes it) | Ruler | OrcLink |
|---|---|---|
| Marketing mix modelling, weekly, spend by API or CSV, promotions and events, seasonality | In Ruler's documentationRecord 4.8 row 1 | BuiltA rough, directional estimate from weekly totals, labelled modelled; not a measured return |
| Diminishing-returns curves, marginal ROAS, revenue impact per channel | In Ruler's documentationRecord 4.8 row 2 | BuiltFrom the same model: rough and directional, with intervals |
| Budget Scenario Planner | In Ruler's documentationRecord 4.8 row 3 | BuiltOver the same model: rough and directional |
| AI Analyst agent | In Ruler's documentationRecord 4.8 row 4 | Built, not yet tested liveOff by default, owner-only; a rule-based check once a day while the scheduled jobs ai-analyst and jobs run (your OrcLink operator schedules them), explained by the AI from aggregate tables only, every number checked against them; not yet run against the live AI API |
| AI Media Planner agent | In Ruler's documentationRecord 4.8 row 5 | Built, not yet tested liveRecommendations from the marketing mix model: a rough, directional estimate; the model's refusals are passed on; not yet run against the live AI API |
Agency, roles, compliance
| Capability (as Ruler describes it) | Ruler | OrcLink |
|---|---|---|
| One login for all client data | In Ruler's documentationRecord 4.9 row 1 | BuiltWorkspace switcher and agency roll-up |
| White-label | In Ruler's documentationRecord 4.9 row 2 | Built |
| User role management | In Ruler's documentationRecord 4.9 row 3 | Built |
| Client dashboard | Listed by RulerRecord 4.9 row 4 | BuiltA client role that sees reports only |
| GDPR, DPA, deletion on request | In Ruler's documentationRecord 4.9 row 6 | Built, not yet tested liveFind, export, delete or opt out one person, and a public request form. The data processing agreement is a draft that counsel has not yet approved: not in effect |
| Retention 2 years, adjustable | In Ruler's documentationRecord 4.9 row 7 | Built90 days, 12 months, 24 months (the default for a new workspace) or no time limit; 90 days in HIPAA mode unless confirmed |
| EU data residency (London) | In Ruler's documentationRecord 4.9 row 8 | Coming soonA data region per workspace (US, EU, UK), one deployment per region; no EU or UK deployment runs yet |
| Encryption, role-based access | In Ruler's documentationRecord 4.9 row 9 | BuiltSecrets encrypted with AES-256-GCM |
| HIPAA | In Ruler's documentationRecord 4.9 row 10 | BuiltHIPAA mode (hashes only, no page paths, generic event names) and a BAA you accept before data leaves; see the BAA template |
| ISO, SOC 2 | Listed by Ruler (not software)Record 4.9 row 11 | Not builtOrcLink holds no ISO or SOC 2 certificate |
Also in OrcLink
- Every ad platform upload waits in an approval batch, has health data stripped and is written to an egress log.
- Strict consent mode: click-level attribution with no visitor cookie and no fingerprint.
- A refund or a lost deal lowers the outcome's net value, because the source system says so.
- Form capture on the forms you mark: the script reads only the first email field and the first phone field, never the message.
- Period-over-period comparison in the performance report.
As of October 2026, from Ruler's public documentation (recorded in OrcLink's parity requirements of 4 October 2026). Ruler may have changed since; check Ruler's own pages. OrcLink is not affiliated with Ruler Analytics.
Modelled numbers in OrcLink (data-driven attribution, the impression layer, the modelled fill, the marketing mix model) are labelled modelled and shown apart. Data-driven attribution is not causal; the marketing mix model is a rough, directional estimate.