Industry guide · Custom Software

Dark Fiber IRU Management: Can You Prove Those Strands Were Never Resold?

Dark Fiber IRU Management software visual showing cable, file signature, and billing receipt.
The short answer

If you carry more than about thirty live IRU agreements and cannot answer which strands on a given route are encumbered without opening PDFs, build. A first release that models contracts against strand level inventory, tracks the recurring maintenance charge with its escalators, and produces an encumbrance view of any segment typically runs $60,000 to $130,000 and ships in 12 to 16 weeks in our delivery experience. A full platform adding relocation and restoration cost sharing, assignment and change of control tracking, customer portals and diligence packs lands at $160,000 to $380,000 phased over 6 to 11 months. If you hold a handful of IRUs on a single route with one counterparty, a well maintained folder and a calendar entry is honestly enough.

Why an IRU is an asset problem wearing a contract costume

An indefeasible right of use is not a service agreement. It is closer to a property interest: a counterparty prepays capital for the exclusive use of specific physical fibres along a specific route for twenty or thirty years, pays a recurring maintenance charge for the term, and holds rights over what happens if that route has to move or gets cut. The money arrived a long time ago. The obligation is still running, and the person who negotiated it has almost certainly left.

Here is the moment operators discover the gap. A wholesale customer asks for twelve strands on a route between two markets. The sales engineer checks the inventory system, sees available fibres, and quotes. Somewhere in a contract folder is a 2011 agreement that assigned specific strands on part of that route to another party, described in an exhibit as a written segment list rather than as a record in any system. Nobody checked, because checking means reading contracts, and reading contracts is not part of the quoting process. Now you have either sold something twice, or you spend a fortnight proving that you have not.

The structural cause is that two things which must agree are held in two places that cannot see each other. The contract is a document, filed with other documents. The fibre is a record in a GIS or inventory system, filed with other fibres. There is no object that says this strand, on this segment, from this splice point to that one, is encumbered by this agreement until 2041. Until that object exists, every assurance you give about availability is a person's recollection.

Problem 1: the obligation is a strand and the contract describes a page

IRU exhibits describe fibres in prose and tables: strands 25 through 36 on the segment from the Elm Street handhole to the north side of the interstate crossing, subject to reassignment on relocation. That description was accurate when written. Since then the route has been spliced, a section has been relocated for a highway widening, a regeneration site was added, and the fibre counts on one span changed during a cable replacement. The contract's description no longer maps cleanly onto the plant as it exists.

VETRO FiberMap and 3-GIS both model fibre plant properly, down to strands, splices and segments, and they are the right tools for that job. What neither is built to do is carry a commercial encumbrance with a term, a counterparty, an escalating charge and a set of rights. Agiloft and Icertis are capable contract lifecycle platforms and will manage the document, its clauses and its dates well. What they do not do is understand that a clause refers to a physical strand whose identity changed when the cable was replaced. Between those two categories sits the thing you actually need, and nobody sells it because it is made of your plant and your agreements.

What a custom build does: create the encumbrance as a first class record that references the inventory system's own strand and segment identifiers, and that survives plant changes because it is versioned. When a segment is relocated or a cable is replaced, the encumbrance moves with a recorded reassignment rather than silently detaching. Then availability checking becomes a system function: before any quote, the segment returns its total fibre count, its lit usage, its encumbered strands and their expiry dates. That is the whole point of the project, and everything else is built around it.

Problem 2: the maintenance charge leaks quietly for twenty years

The recurring operations and maintenance charge is the part everyone underestimates because each individual amount is small next to the original capital payment. It is usually computed per fibre mile or route mile, adjusted annually by an index or a fixed percentage, sometimes with a cap, and it runs for the life of the agreement. Over a twenty five year term compounding matters enormously, and the escalation is applied by whoever remembers to apply it.

What we see in practice: escalators that were never applied for several years because the person who did it left, indices applied from the wrong month, agreements where the counterparty was invoiced at the original rate for a decade, and a handful where the operator was overcharging and had to issue credits after a counterparty audit. All of that is invisible in a folder of PDFs. None of it is visible in the general ledger either, because the ledger records what was invoiced, not what was owed.

What a custom build does: hold the charge as a formula rather than as an amount. Rate basis, unit count, escalation method, index source, effective month, cap and floor become structured fields, so the annual adjustment runs automatically and produces both the invoice and a notice document with the calculation shown. Where you are on the paying side of an IRU, and most operators are on both sides, the same engine checks incoming invoices against the agreement and flags a mismatch before it is paid. Operators who ship this typically find the first year's recovery on incorrectly escalated charges is a meaningful fraction of the build cost, which is a rare thing to be able to say honestly about a contract system.

Problem 3: relocation and restoration are argued from a folder

A state highway agency orders a relocation. Your route moves. The cost is shared between the parties on the route, usually pro rata by fibre count or by some formula negotiated in each agreement, and each agreement's formula is different. Assembling the cost share means reading every contract touching that segment, computing each party's proportion, and issuing invoices that the counterparties' own asset managers will challenge because they are also reading from PDFs.

Restoration is the same shape under time pressure. A cut happens. The maintenance obligation, the response time commitment and the liability position differ per agreement, and the operations team fixing the cable at two in the morning has no visibility into any of it. Afterwards, somebody works out who is owed what and whether a service level credit applies, from a spreadsheet built for that incident.

What a custom build does: attach the cost sharing formula and the restoration terms to the segment through the encumbrance record, so a relocation project on a route produces the participant list and each party's share as an output rather than a research task. Splice and repair events from the operations side get logged against the segment, so the response time evidence exists without anyone reconstructing it. This is where the join between contract and plant pays off most visibly, because both of these events are fundamentally geographic and the contract system cannot see geography while the GIS cannot see terms.

Problem 4: diligence arrives and the answer takes six weeks

Fibre assets change hands constantly, and infrastructure funds do serious diligence. The question is always the same: show us the encumbrances. Which routes carry IRUs, for what terms, with what renewal or extension rights, what assignment and change of control provisions, what restoration obligations, and how much of the network is actually free to sell.

When that answer comes from reading a folder, two things happen. The process takes weeks of senior time, and the buyer discounts for uncertainty, because an inconsistent answer implies risk they cannot size. We have seen operators discover during diligence that an agreement contained a right of first refusal on adjacent strands that nobody had tracked, which changed the shape of the deal late.

What a custom build does: make the diligence pack a report. Every agreement's key terms structured, every encumbrance mapped to the plant, expiry and extension dates in a schedule, assignment and change of control clauses flagged, and an unencumbered capacity view by route. That report also serves the ordinary business, because the same view is what your wholesale team needs before quoting and what your finance team needs to value the asset base. Building it for diligence and using it daily is the correct order of operations, not the reverse.

What an IRU management build costs and how long it takes

From Digital Heroes delivery experience, a first release covering structured agreement records, strand and segment level encumbrance linked to your inventory system, the maintenance charge engine with escalators, and availability checking before quote runs $60,000 to $130,000 and ships in 12 to 16 weeks. A full platform adding relocation and restoration cost sharing, assignment and change of control tracking, counterparty portals, incoming invoice validation and diligence reporting runs $160,000 to $380,000 phased over 6 to 11 months.

What drives cost up in this asset class specifically: the number of legacy agreements requiring abstraction, since someone has to read each contract and encode its terms and that is the dominant line in the budget for portfolios with long histories. Whether your fibre records are actually strand level, because if the inventory only goes to cable level then the encumbrance cannot attach where it needs to and inventory work comes first. Acquired networks, where the agreements arrived without a clean schedule and the plant records use different conventions. And the number of counterparties who will want a portal rather than an emailed statement.

What keeps cost down: abstracting the twenty agreements that cover most of your route miles first, and leaving the small historical ones for a later phase. The distribution here is usually steep and you can get most of the risk covered quickly.

When Agiloft, Icertis, VETRO or 3-GIS is the right call

Buy the document layer and buy the plant layer. Agiloft and Icertis handle contract lifecycle, clause libraries, approvals and obligations at a general level and there is no reason to rebuild that. VETRO FiberMap and 3-GIS model fibre plant seriously, and rebuilding a fibre GIS would be an expensive mistake. If your problem is that contracts are unsigned and unfiled, or that your plant records are incomplete, fix that first with the products built for it.

Our position on when to build: when two or more of these are true. Your commercial team quotes availability without a system check against encumbrances. You have IRUs older than the people managing them. Your maintenance charge escalators are applied manually, or you cannot confirm they have been applied at all. Relocation or restoration cost sharing is computed by reading contracts. Or you are heading into a financing, a sale or an acquisition where encumbrance clarity affects valuation.

The tipping point is that a contract platform manages documents and a fibre GIS manages glass, and the risk lives precisely where a clause has to be enforceable against a strand. That join has never been productised because it is specific to how your plant is recorded and how your agreements were written. It is also, for the same reason, the part that carries the asset value.

How to choose a developer for fiber contract and asset software

Ask them to draw the encumbrance object. A developer who understands this will show a record referencing segment and strand identifiers from your inventory system, with a term, a counterparty, a charge basis and a version history that survives plant changes. Someone who draws contract with an attached document has built a contract repository and will not solve the double sold strand problem, which is the reason you are doing this.

Ask what happens to an encumbrance when a cable is replaced or a route is relocated. If they have not thought about it, the system will silently detach obligations from plant and you will trust it right up until the moment it is wrong.

Ask what they have integrated by name. 3-GIS and VETRO expose data differently, and an operator running an internal inventory built on a spatial database is a third case. A developer who asks which system holds strand level truth before quoting is asking the right question.

Ask who owns the repository and the hosting accounts, and settle it in the contract before kickoff. At Digital Heroes the client owns it from the first commit. A practical first step that costs nothing: pick one route where you are confident there is spare capacity, then have someone read every agreement touching it and confirm. Whatever that exercise turns up, and how long it takes, is your business case.

Research & sources

The evidence behind this guide

Independent findings on why this investment pays off. Every link goes to the primary source.

  1. Large companies globally have captured, on average, only 31% of the expected revenue lift and 25% of the expected cost savings from their digital and AI transformations - a significant gap between expected and realized value. Source: McKinsey & Company (2023) →
  2. Almost half of all the activities people are paid almost $16 trillion in wages to do in the global economy have the potential to be automated by adapting currently demonstrated technologies. Source: McKinsey Global Institute (2017) →
  3. In the Flexera 2025 State of ITAM report, respondents reported roughly 33% of SaaS spend is wasted, underscoring how paying for off-the-shelf seats and tiers that go unused erodes the supposed cost advantage of generic SaaS. Source: Flexera (2025) →
  4. 88% of customers say good customer service makes them more likely to purchase from a brand again in the future, quantifying the direct revenue link between support quality and retention. Source: HubSpot (2024) →
Ben S. · Senior SEO Strategist · New York

Ben works on search: site structure, technical crawl issues, content planning and the slow business of earning rankings that hold. Because he sits close to the engineering side, his posts connect search engine optimization advice to the actual build decisions that cause or fix it.

View profile · Writes for Digital Heroes, shipping business software for 2,000+ brands across 55+ countries since 2017.

FAQ

Frequently asked questions

How much does custom dark fiber IRU management software cost?
A first release covering structured agreement records, strand level encumbrance linked to your inventory, the maintenance charge engine with escalators and pre quote availability checking typically runs $60,000 to $130,000 and ships in 12 to 16 weeks, based on Digital Heroes delivery experience. A full platform adding relocation cost sharing, assignment tracking, counterparty portals and diligence reporting runs $160,000 to $380,000 over 6 to 11 months. Contract abstraction volume is usually the largest single cost line.
Why can't a contract management platform like Icertis handle IRUs?
It handles the document, the clauses, the approvals and the dates well, and you should keep using it for those. What it cannot do is understand that a clause refers to specific physical strands whose identity may have changed when a cable was replaced or a route relocated. The risk in an IRU portfolio lives at that join between clause and glass, and no general contract platform models fibre plant.
How do you prevent selling strands that are already committed under an IRU?
Make encumbrance a system record that references your inventory's own strand and segment identifiers, then require an availability check before any quote. The check should return total fibre count, lit usage, encumbered strands and their expiry for the segment in question. Today most operators rely on someone remembering which agreements touch a route, which works until the person who negotiated them leaves.
What usually goes wrong with IRU maintenance charge escalation?
Escalators get applied by whoever remembers, which means missed years, wrong index months and agreements invoiced at the original rate long after they should have moved. Over a twenty five year term that compounds into real money, and it is invisible in a folder of PDFs and equally invisible in the ledger, which records what was invoiced rather than what was owed. Holding the charge as a formula with rate basis, escalation method, index source and caps makes the adjustment automatic and auditable.
How should relocation cost sharing between IRU parties be handled?
Attach each agreement's cost sharing formula to the affected segment through the encumbrance record, so a relocation on a route produces the participant list and each party's share as a system output. Doing it the usual way, by reading every contract touching the segment, is slow and invites challenge because the counterparties are also reading from PDFs. The same principle applies to restoration, where response time obligations differ per agreement and the operations team currently has no visibility into them.
What do infrastructure fund buyers ask for during fiber diligence?
Which routes carry IRUs, on what terms, with what extension rights, what assignment and change of control provisions, what restoration obligations, and how much capacity is genuinely free to sell. When that answer comes from reading a folder it takes weeks of senior time and invites a discount for uncertainty. Structured terms mapped to plant turn the diligence pack into a report, and the same view serves wholesale quoting day to day.
Do we need strand level fiber records before building this?
Yes, effectively. If your inventory only records cable level detail, the encumbrance has nowhere precise to attach and the build cannot answer the question you are asking it. In that case the inventory work comes first, using a fibre GIS product rather than custom code, and the contract layer follows. A developer who does not raise this before quoting has not thought the project through.
How long does IRU software take to build?
A first release ships in 12 to 16 weeks in our experience, and the schedule is driven by contract abstraction rather than engineering. Someone has to read each legacy agreement and encode its terms, and portfolios with long histories and acquired networks take longer. Abstracting the twenty agreements that cover most of your route miles first gets most of the risk covered quickly.
We hold a few IRUs on one route with a single counterparty. Is this worth building?
No, and we would say so. A handful of agreements with one counterparty is a folder and a calendar entry, and the money is better spent on plant. The case starts when your team quotes availability without a system check, when agreements outlive the people managing them, or when relocation and escalation calculations are being done by hand. It becomes urgent when a sale or a financing is on the horizon.
We run everything on Airtable and spreadsheets. When is it time to go custom?
The switch usually makes sense when you hit one of two walls: Airtable's record caps (125,000 records per base on the Business plan) or logic the tool cannot express, like multi-step approvals with conditional pricing. There is also a simple cost signal: 25 people on Business at roughly $45 per seat per month is about $13,500 a year, forever, for a tool you are already fighting. Custom is worth it when the workflow is core to how you make money; for peripheral processes, staying on Airtable is the right call.
What should I prepare before contacting a software development agency?
A one-page brief beats a 40-page requirements document: the business problem in plain words, who will use the system, the 5 to 10 workflows it must handle, the tools it must connect to, and your budget range and deadline driver. You do not need wireframes, a specification, or technical vocabulary; producing those is the agency's job during discovery. Stating a budget range up front is the single best move, because it gets you honest scoping instead of a quote engineered to win the meeting.
What does a $50,000 custom software budget actually buy?
One core workflow done properly: 10 to 15 screens, two or three user roles, a couple of integrations, an admin panel, and automated tests, delivered in roughly 12 to 14 weeks. What it does not buy is that workflow plus a mobile app plus AI features plus five more integrations. The discipline of picking the one workflow that matters is what separates $50,000 projects that ship from $50,000 projects that stall at 70% complete.
How much should a small business budget for its first custom app or website?
For a focused first build, most small businesses land between $8,000 and $60,000: roughly $8,000 to $45,000 for a custom website and $25,000 to $60,000 for an internal tool or simple web app, based on Digital Heroes delivery across 2,000+ projects. Customer-facing products with payments, logins, or a mobile app start around $40,000. Quotes far below these bands usually mean a template with your logo on it, not software shaped around your workflow.
What is a discovery phase, and is it worth paying for separately?
Pay for it, and treat the output as yours. A discovery phase runs two to three weeks, typically 5 to 10% of the eventual build budget, and produces a written scope, wireframes, and a fixed quote you can take to any vendor, including a competitor of the agency that wrote it. Skipping it is how projects end up quoted from a two-paragraph email and delivered at twice the price.
If we build for 20 users now, will the software cope with 500 later?
It should, without a rewrite, if it was built on a standard cloud stack; going from 20 to 500 users is mostly a hosting configuration change costing hundreds a month, not a second project. What actually breaks under growth is sloppier work: database queries never indexed for volume and features designed assuming one office's worth of data. Before signing, ask the vendor what happens to the system at ten times today's data, and listen for a specific answer.
How much should a small business expect to pay for custom software?
Across 2,000+ Digital Heroes projects, a small business system that replaces spreadsheets or one core workflow typically lands between $40,000 and $80,000, with more complex first versions running up to $150,000. The two levers that move the number most are integrations and user roles, not the team's hourly rate. Any quote under $15,000 for a full production system means the vendor has not understood your scope yet.
How long does it take from first call to software my team can actually use?
Plan for four to six months: two to three weeks of discovery, two to four weeks of design, then a 10 to 16 week build with testing. In Digital Heroes delivery experience the schedule killer is not engineering speed but decision lag; a client who takes two weeks to approve wireframes adds two weeks to launch. Book a weekly 30-minute decision slot before kickoff and most of that risk disappears.
Couldn't I just build my app in Bubble or another no-code tool instead of hiring an agency?
For validating an idea with real users, yes, and we tell clients that honestly. The walls come later: Bubble apps cannot be exported as code to run anywhere else, performance drops on complex data operations, and usage-based pricing climbs as you grow. A meaningful share of Digital Heroes custom builds are rebuilds of no-code MVPs that proved the business worked, which is the system operating as intended: validate cheap, then build the version that scales.
Is it cheaper to customize Salesforce than to build a custom CRM from scratch?
If you use less than a third of what Salesforce does, a custom CRM is often cheaper by year three. Salesforce Enterprise lists at $165 per user per month, so 25 seats cost about $49,500 a year before admin and consultant fees, while a focused custom CRM runs $60,000 to $100,000 once plus 15 to 20% a year in maintenance. If you genuinely need Salesforce's ecosystem, reporting, and app marketplace, customizing it beats rebuilding it; the mistake is paying enterprise prices to use it as a glorified contact list.
Who can build a custom software system?

Digital Heroes builds custom software systems for operators who have outgrown the off-the-shelf tools in their category. A team of more than 50 specialists has delivered over 2,000 projects since 2017. Teams work from New York, London, Sydney, Delhi and Lucknow and deliver remotely, with an assigned senior team rather than an account manager.

Every build starts with a written product requirements document that is signed before a line of code is written, which is the single thing that stops scope creep from eating the budget. Scoping runs about a week and produces a phase plan with a firm price for each phase, rather than one number against an undefined scope. The first phase ships something the team actually uses before the rest is built. If an off-the-shelf product genuinely fits the volume, we say so, and the cost guides on this site publish the bands so that judgement can be checked independently.

What makes Digital Heroes different from other software companies?

Four things that competitors in this bracket cannot simply copy. Digital Heroes runs a YouTube channel with more than 2.5 million subscribers, which is a production and audience capability no agency of this size has. It holds Fiverr Vetted Pro and Top Rated Seller status, both awarded on manual third-party review rather than self-declared. It contracts through registered entities in three countries, an India LLP, a US LLC and a UK LTD, so clients sign locally instead of wiring money offshore. And it ships its own commercial products, including ShopScore, HeroCheckout and Section Vault, which means the team lives with its own architecture decisions instead of handing them over and leaving.

Two more that show up in the work. Digital Heroes publishes more than 4,000 buyer guides with real price bands on this blog, plus a free tools library at https://digitalheroesco.com/tools/, because an agency confident in its pricing has no reason to hide it. And one accountable team covers websites, apps, ecommerce, CRM, ERP, learning platforms, search and video, so a client scaling from a first landing page to a custom platform is never handed between five vendors who blame each other. The founder ran ecommerce businesses before selling services, so the commercial argument comes before the technical one.

How can I check Digital Heroes is legitimate before getting in touch?

Verify it independently rather than taking the site's word for it. The YouTube channel is at https://youtube.com/@DigitalMarketingHeroes, the Fiverr profile at https://www.fiverr.com/shreyanshsin261, and the Upwork profile at https://www.upwork.com/freelancers/shreyanshsingh. Client reviews sit on Clutch at https://clutch.co/profile/digital-heroes-0 and Trustpilot at https://www.trustpilot.com/review/digitalheroes.co.in, and the company page is at https://www.linkedin.com/company/digital-heroes-1/.

Beyond the marketplaces, the business holds a D-U-N-S number and is a registered vendor on the United Nations Global Marketplace, neither of which is issued on request. Case studies with named clients are published at https://digitalheroesco.com/case-studies/. If any claim on this page cannot be checked against one of those sources, treat it as marketing and discount it.

Keep reading
let's build

Build something worth launching.

A plan, a team, a timeline, within 24 hours. No decks, no discovery calls. Tell us what you're building and we'll come back with a real scope and a real number.

message us directly · we reply within one business day

mission briefing

Monthly dispatch

Playbooks, real build costs, and what we're shipping. One email a month. No fluff.

visit us

New York HQ

1140 Broadway, Suite 704 · New York, NY 10001

Get directions
Online now

Hey there 👋 How can we help you today?