Open-Source Server-Side Tracking for Home Services
PipelineOn’s tracking software is open source under the MIT licence. It combines campaign tracking, business outcomes, attribution reports and optional Meta Conversions API and Google Ads delivery. You can self-host it for free, or choose the planned PipelineOn-hosted option at around $20/month.
For a home-service business, the useful journey starts with a tagged website visit and ends with a qualified inquiry, booking or payment. The software connects the records your integration supplies and lets you inspect the source evidence.
Available now: View the open source and setup instructions, or download the v0.3.2 ZIP. Self-hosting is available now. PipelineOn-hosted pricing, included usage and availability are still being finalized.
On this page
- What does the MIT licence let you do?
- What is included in the open source?
- Break the HYROS purchase into separate jobs
- A roofing example from visit to payment
- Self-hosted or PipelineOn-hosted
- What does self-hosting require?
- Prove the setup with one complete journey
What does the MIT licence let you do?
The software is open source under the MIT licence. You can:
- Use it for your own business, including commercial use.
- Modify it to fit your website, CRM or client projects.
- Copy, share, distribute or sell copies of the software.
Keep the copyright and licence notices in copies or substantial portions of the software. The software is supplied without a warranty. The MIT licence text sets out these permissions and conditions. This licence covers the open-source project, not PipelineOn’s private application, customer data or separate paid services.
What is included in the open source?
| Part | What it does | What you supply |
|---|---|---|
| Website collection | Captures allowlisted campaign and click parameters with a browser session reference | Website installation and consent configuration |
| Outcome ingestion | Accepts normalized form, call, booking and payment facts through an authenticated API | A backend, CRM workflow or automation that maps the records |
| Attribution | Reports first touch, last touch and last non-direct touch using linked visits | The accepted session reference carried into the inquiry and later outcomes |
| Tracking doctor | Checks saved source, outcome and linkage evidence | An operator to investigate gaps and incomplete coverage |
| Meta delivery | Queues eligible conversions, retries temporary failures and retains delivery receipts | Your dataset, server credential and permissioned matching fields |
| Google Ads delivery | Maps business outcomes to configured conversion actions and retains validation, submission and processing receipts | Your Google Ads account, conversion actions, authorized OAuth connection and permissioned matching fields |
| Read-only assistant tools | Exposes reports, tracking checks and delivery receipts | An authenticated compatible client |
This is a practical attribution foundation for teams that can own their setup. The first release runs one website in one application process with a persistent SQLite database. A multi-client agency should plan separate deployments and access boundaries rather than assume the download is a managed agency console.
Break the HYROS purchase into separate jobs
HYROS describes collection, customer matching, attribution, conversion feedback and broader optimization in its product overview. Those are separate jobs even when one vendor bundles them.
Start by asking which job your contractor actually needs. If Facebook sees form submissions but never learns that a lead booked an installation, the immediate gap is an outcome connection. If your team cannot tell which campaign originated a payment, the gap includes attribution. If you need someone to manage ad decisions, that is a broader operating requirement.
The open-source software covers collection, normalized business outcomes, attribution and optional delivery to Meta or Google Ads. PipelineOn’s homeowner identification, enrichment and follow-up services remain separate paid capabilities. The software does not identify anonymous people, provide tracking phone numbers, send GA4 events or reproduce HYROS AIR. Compare the scope in HYROS versus PipelineOn.
Version 0.3 adds a canonical business-event contract: leads, qualified enquiries, bookings, estimates, won jobs and payments have separate meanings. Only completed payments carry conversion revenue. Google Ads uses the Data Manager API directly, with no GTM requirement. Follow the Google Ads setup guide for account access and action mapping.
A roofing example from visit to payment
Imagine a homeowner arrives through a tagged roof-replacement campaign, submits a quote request and later pays a deposit. This is an illustrative workflow, not a customer result.
The website receives an accepted session reference. Your form saves it with the inquiry. Your CRM or backend carries that reference into the booking and payment records, then sends normalized outcomes to the software. The attribution report can show the recorded marketing touches before each linked outcome.
For an eligible payment, the integration can explicitly request Meta or Google Ads delivery with the real amount, currency, event time and matching information. The sender records an attempt and retains the destination response. If a temporary failure occurs, it retries using the same event identity.
An outcome without a valid session link can still be stored, but it remains unlinked for visit attribution. The software does not guess the campaign from a similar timestamp or customer name. See the offline conversion workflow for the record handoff.
Self-hosted or PipelineOn-hosted
The same open-source software has two ways to run it:
| Option | Price | Who runs it? |
|---|---|---|
| Self-hosted | Free software | You run it on your own server and handle setup, updates and backups. Infrastructure and integration may still cost money. |
| PipelineOn-hosted | Planned at around $20/month | PipelineOn hosts the software for you. Final price, included usage, support scope and availability are still being finalized. |
Self-hosting is available now from the open-source repository. Ask about PipelineOn-hosted if you would prefer us to run it for you.
Both routes still need a mapped connection to your website and business outcomes. Hosting does not automatically connect every CRM. Use the cost guide for the full budget and server-side shortlist to compare other providers.
What does self-hosting require?
The operator installs the supported Node runtime or supplied Docker configuration, creates separate read and write secrets, configures allowed website origins and places the service behind HTTPS. Persistent storage and tested backups are essential because they preserve attribution and delivery history.
The website collector starts after the integration permits consented collection and respects Global Privacy Control. Your own integration must preserve the session reference through forms and business systems. Generic authenticated HTTP connections can use a backend, CRM workflow, n8n, Make or Zapier. A raw provider webhook still needs verification and mapping; the bundle does not include native CRM logins.
For Meta, keep the access token on the server and supply appropriate matching fields from your direct customer interactions. The software does not scrape contact details or automatically read Meta cookies. Tracking consent, conversion eligibility and data origin remain part of your implementation.
Prove the setup with one complete journey
Test a tagged visit, an accepted form and a linked outcome. Check the source, original event time and payment amount against the source record. Then replay the import and confirm that totals and outbound attempts do not increase.
Enable Meta test mode, inspect the retained receipt and find the event in Events Manager Test Events. A provider acknowledgement establishes receipt; matching, ad attribution and campaign improvement require their own checks. An already accepted event also needs separate downstream handling if its source is later corrected or consent is withdrawn.
For Google Ads, start in validation-only mode. A validation result is not a live conversion; a submitted request ID is not completed processing. Check the retained processing receipt and Google Ads matching diagnostics separately. GA4 is a separate destination and is not included in this release.
Start with Meta CAPI for contractors and the first-party data strategy. If your agency already has a server GTM container, compare Stape and PipelineOn before replacing that infrastructure. Discuss hosting and setup.
For the practical sequence from deployment to a mapped payment and optional Meta test event, use the server-side tracking setup walkthrough. For other campaign responsibilities, compare nine Facebook Ads tools for home services.
Written by
PipelineOn Research Team