Messy spatial data, made usable — cleaner databases, smoother GIS workflows.
Years of records sit across outdated or incompatible systems, too large for your team and too specialised to hire for.
What you get
Cleaning, conversion and ETL into structured, analysis-ready geodatabases.
Twenty years of records across four systems, three coordinate systems, and one retired member of staff who understood how it fitted together.
Most of the work is finding out what is actually in the data before touching it. We convert, clean and restructure into geodatabases your analysts can query without asking which vintage a layer came from — and write the pipeline in Python so the next load is a script, not a project.
- Format migration — shapefile, MapInfo, CAD, spreadsheet and paper-derived records into a single schema
- Geodatabase design and construction, with domains, subtypes and relationship classes
- Topology cleanup: slivers, gaps, overshoots, duplicate and unclosed geometry
- Coordinate system reconciliation and datum transformation across mixed-vintage data
- Attribute normalisation, deduplication and validation rules
- Repeatable ETL in Python so the next load does not need us
Stack
Where our work stops
Scoped project work, not a managed service contract.
A defined dataset, schema, deliverable and end date. Not a data management contract, a helpdesk or a retainer. If you need continuous stewardship, we are the wrong shape and will say so.
How a conversion is scoped
Nobody can price data they have not seen.
Quotes given without looking at the data are guesses, and the client always pays for a bad guess — in a price padded for unknown risk, or in a project that stops halfway.
So the first step is a test on a real extract. Then the full job gets a fixed price against a known quantity.
- 01
Send a representative extract
Not the cleanest sample — a normal one, ideally including the parts you know are messy.
- 02
We run a conversion test
And report honestly on what is in there: geometry validity, attribute reliability, coordinate consistency, duplication.
- 03
Fixed price on a known quantity
Scope, schema, deliverable and end date agreed in writing before the full job starts.
- 04
You keep the pipeline
Scripts and documentation handed over, so the next load does not require another project.
The trial job
Send a sample extract for a conversion test.
We reply within 24 hours and send a full written scope within two business days.
Send a sample extract
A few thousand records is plenty. Include the layer you know is a problem — the undocumented coordinate system, or the attribute that means three things depending on who typed it.
You get the report either way. If you read it and do the work in-house, that is a fine outcome.
Before you ask
What GIS managers ask first
How do you price a conversion when nobody knows how bad the data is?
We do not, and you should not accept a number from anyone who does. Send a representative extract, we run a conversion test and report what we found — what is clean, where topology fails, which attributes are unreliable. That report prices the full job, and it is useful even if you then do the work in-house.
Will we be able to maintain it afterwards?
That is the intent. The ETL is Python against open libraries, not a proprietary tool needing a licence and a specialist to re-run. You get the scripts and the documentation, and your team runs the next load.
Can you take on our data management ongoing?
No, and that is a deliberate limit rather than a capacity problem. Scoped work with a defined deliverable is what we do well. A managed service carries different availability guarantees, and promising one we cannot staff would be a disservice.
What about sensitive or restricted records?
Say so before sending anything. Data is used for your job and nothing else, is never reused as portfolio material, and is deleted on request at the end of the project. If you need an NDA or a data processing agreement in place first, send yours and we will sign it.
Scope a pilot conversion.
Send a sample extract for a conversion test.
Reply within 24 hours. Written scope within two business days.