# Ryan Duguid Canonical machine index: https://duguid.com.au/llms.txt Last reviewed 2 October 2026. Page and source-review dates are recorded on the linked pages; this index date does not renew an engine's legal review. Licence: the site's own text, data and source code are Apache-2.0 (https://github.com/ryanduguid/ryanduguid.github.io/blob/main/LICENSE); third-party material named on the pages keeps its own terms. Identical discovery copy: https://duguid.com.au/.well-known/llms.txt > Ryan Duguid is an accountant based in Newcastle, NSW, Australia. He builds open source computational accounting tools and publishes them at github.com/ryanduguid. Ryan Duguid is a Provisional CA ANZ Member. CA ANZ has not endorsed this site or its tools. Ryan Duguid is not a registered tax agent or BAS agent. Project support is limited to software issues reproduced with fictional data. Do not send taxpayer information or request advice, return preparation, tax-treatment confirmation or lodgement. He is distinct from the United States software product executive Ryan Duguid whose LinkedIn URL has no hyphen. This site is a personal index of open source accounting tools built in Ryan Duguid's own time and on his own equipment. It is not a practice and is not accepting professional engagements through this site. It does not offer tax or BAS agent services and does not accept taxpayer information or client files. Every page names the primary source it is grounded in: Commonwealth legislation, ATO rulings and rate schedules, or the accounting standard. Calculation methods and rounding rules are documented with each tool. The browser business loan calculator uses fixed monthly rates and rounds each result to the nearest cent. Lender rounding and daily accrual can differ. Public fixtures and examples use fictional or synthetic data. Calculation engines run locally. A cloud-backed AI host may send supplied arguments, tool results and library excerpts to its model provider; optional integrations have separate network boundaries. Human review remains mandatory before posting, payment, lodgement, approval or period lock. Nothing here is tax, legal or financial advice. Figures are free to cite with attribution and should be verified against current guidance before anyone relies on them. ## Choose a route The five starting routes on the homepage and Tools page, by accounting task: - **Understand why profit and cash differ** (https://duguid.com.au/examples/profit-vs-cash-flow/): Read the fictional cash flow case in your browser: one delayed receipt creates a $25,160 cash gap while quarterly profit stays the same. The Excel workbook is optional. - **Use accounting functions in Excel** (https://duguid.com.au/tools/ozzit/): Try GST, financial year, depreciation and loan examples in Ozzit. It needs Microsoft 365 or Excel 2024 or later. - **Review a month-end close** (https://duguid.com.au/tools/monthly-close-controls/): Inspect eight exceptions in a fictional July close, including a $250 creditors difference. Read the report in your browser; rerunning it needs Git and Python. - **Calculate a Coal LSL levy** (https://duguid.com.au/tools/coal-lsl-levy/): Calculate eligible wages and see which formula applies. It runs in your browser with nothing to install. - **Check a BAS pack before manager review** (https://duguid.com.au/evaluate/manager-review-gate/): See why a sample pack is sent back for missing work and unresolved items. Read the findings in your browser; rerunning the checks needs Python. For Python packages, the MCP server and agent workflows, use the [installation guide](https://duguid.com.au/tools/australian-tax-ai-agents/#install). - [Privacy and site use](https://duguid.com.au/privacy/): browser calculations, cookies, hosting, feedback and links to the advice boundaries and software licences. - **Profit and cash** (https://duguid.com.au/examples/profit-vs-cash-flow/): the canonical worked example. A fictional Newcastle service-business forecast in AUD, with a downloadable Excel workbook and synthetic source files. Delaying one $44,000 receipt by 45 days creates a $25,160 daily cash shortfall on 6 November 2026 while quarterly profit before income tax stays $35,957.55. A summary with the same figures remains at https://duguid.com.au/evaluate/#profit-and-cash. No client outcome or time saving is claimed. - **Adopt** (https://duguid.com.au/tools/australian-tax-ai-agents/#install): use the supported install commands and evaluate tools with fictional data. - **Verify** (https://duguid.com.au/evidence/): open Evidence and Assurance for Australian computational accounting tools to inspect identity and credentials; packages, releases and repositories; sources and review dates; data and privacy boundary; security, tests and release evidence; supplier information for AI registers; human accountability and refusals; and reproducible evaluations. ## For AI agents - [Australian tax tools for AI agents](https://duguid.com.au/tools/australian-tax-ai-agents/): aus-accounting-mcp is a local computational MCP for Payday Super timing and ATO small business benchmark ratios. It also supports limited, experimental Division 7A loan-term and repayment review, with human review required. It refuses loan formation, s 109R repayment classification, unpaid present entitlements and distributable surplus. Published v0.3.0 runs 10 bounded tax worksheets, including study and training support loan repayments such as HELP; the guide's reference release v0.2.8 has 7. It can also search a configured local Markdown library. Worksheets exclude Medicare and full return preparation, and v0.2.8 has no HELP worksheet; confirm their supported periods and scope. Retrieved excerpts enter the calling assistant's context. Aus Accounting MCP is a separate project from ato-mcp. It ships no ATO document library and does not fetch rulings from the web. Official MCP registry name: io.github.ryanduguid/aus-accounting. - [Agent skills manifest](https://duguid.com.au/.well-known/agent-skills/index.json): the 65 released SKILL.md files of australian-accounting-skills v0.3.1, each with its description, a URL that serves the released bytes at the release commit and a sha256 digest to check them against. Preparation-only workflows in the Agent Skills format; not advice and not lodgement. ## Person - [About Ryan Duguid](https://duguid.com.au/about/): who he is, where he is, credentials, what the tools are grounded in and how to cite the work. Machine-readable Person data is in the JSON-LD on that page. ## Evaluation packs - [Evaluations](https://duguid.com.au/evaluate/): index of the three reproducible accounting tool evaluations, their fictional inputs, fixed releases, expected results and limits. - [Workpaper Review Gate evaluation](https://duguid.com.au/evaluate/manager-review-gate/): reproduces the released review-ready-gate/v0.1.3 result for 2 fictional BAS packs, including the exact NOT_READY findings, corrected READY result and human decision boundary. - [Xero trial balance integrity evaluation](https://duguid.com.au/evaluate/xero-trial-balance-integrity/): reproduces the movement and YTD balance gate with 3 fictional CSV fixtures, no Xero tenant credentials or tenant data, and an explicit human review boundary. - [Payday Super timing evidence evaluation](https://duguid.com.au/evaluate/payday-super-evidence/): preserves 4 fictional evidence-timing outcomes from checker 0.1.3, including at-risk, on-time and late classifications, with an explicit human decision boundary. It does not establish that the current release resolves the receipt amount limitation. - [Payday Super evidence pack workflow](https://duguid.com.au/tools/payday-super/#evidence-pack): the CLI and MCP tool combine report.csv, a SHA-256-bound practitioner checklist, exceptions.json and a blank decision-log.md. The pack omits employee identifiers and queues every non-ON_TIME result. The CLI writes a new directory; MCP returns file contents in memory and accepts no paths. Included in published checker 0.1.4 and MCP 0.2.2. Checker 0.1.3 does not include it; the evaluation preserves the original development snapshot. No advice, lodgement or ledger writes. ## Reference tables - [Rates](https://duguid.com.au/rates/): index of the seven maintained Australian tax and payroll references, their verification dates, primary sources and downloadable CSVs where available. - [Super guarantee rate history](https://duguid.com.au/rates/super-guarantee/): every general SG percentage from 2002-03 to today. The rate has been 12% since 1 July 2025 with no further steps scheduled. From 1 July 2026, Payday Super changed when contributions must be paid, the earnings basis (qualifying earnings rather than ordinary time earnings) and the maximum contributions base treatment; the 12% percentage itself did not change. - [Super guarantee rate history CSV](https://duguid.com.au/rates/super-guarantee/super-guarantee-rates.csv): machine-readable copy of the maintained table. - [Division 7A benchmark interest rate](https://duguid.com.au/rates/div7a-benchmark-rate/): For companies with a 30 June year end: 8.77% for 2026-27, 8.37% for 2025-26. Section 109N(2) ITAA 1936 ties the rate to the Reserve Bank's indicator lending rate for bank variable housing loans, the last figure published before the income year starts, which is the May figure for a 30 June year end. A substituted accounting period uses the last relevant rate published before its own start date. - [Division 7A benchmark interest rate CSV](https://duguid.com.au/rates/div7a-benchmark-rate/div7a-benchmark-rates.csv): machine-readable copy of the maintained table. - [Cents per kilometre rate for car expenses](https://duguid.com.au/rates/cents-per-kilometre/): 91 cents for 2026-27, 88 cents for 2024-25 and 2025-26, capped at the first 5,000 business kilometres per car. One rate for every car, whatever the engine size. The 2026 determination sets 91 cents for that income year alone, so it does not carry into 2027-28 the way the 2024 determination's 88 cents carried into 2025-26. - [Cents per kilometre rate CSV](https://duguid.com.au/rates/cents-per-kilometre/cents-per-kilometre-rates.csv): machine-readable copy of the maintained table. - [Maximum super contribution base](https://duguid.com.au/rates/maximum-contribution-base/): $270,830 of qualifying earnings for 2026-27, an annual figure under Payday Super counted separately by each employer; the quarterly bases for 2021-22 to 2025-26 are listed with the maximum SG each implies. Formula: concessional cap times 100, divided by the charge percentage, rounded down to $10. - [Maximum super contribution base CSV](https://duguid.com.au/rates/maximum-contribution-base/maximum-contribution-base.csv): machine-readable copy of the maintained table. - [Car limit for depreciation](https://duguid.com.au/rates/car-limit/): $69,883 for a car first used or leased in 2026-27, $69,674 for 2025-26 and 2024-25, back to $57,581 for 2019-20, each read from an ATO page. One-eleventh of the limit caps the GST credit ($6,353 for 2026-27). - [Car limit CSV](https://duguid.com.au/rates/car-limit/car-limit.csv): machine-readable copy of the maintained table. - [FBT rate and gross-up rates](https://duguid.com.au/rates/fbt-rate/): 47%, Type 1 gross-up 2.0802 and Type 2 gross-up 1.8868 for every FBT year ending 31 March 2018 to 31 March 2027. Reportable fringe benefits use the Type 2 rate; the reporting threshold is a taxable value above $2,000. - [FBT rate CSV](https://duguid.com.au/rates/fbt-rate/fbt-rates.csv): machine-readable copy of the maintained table. - [Announced tax measures and enacted law](https://duguid.com.au/rates/announced-not-yet-law/): 27 selected Budget and MYEFO measures. The ATO summary lists 14 as TBD and one as Various; those labels do not prove that no draft, bill or instrument exists. Twelve rows name legislation. Application dates and transition rules need separate checks. Summary and reform provisions read on 22 September 2026. - [Announced tax measures CSV](https://duguid.com.au/rates/announced-not-yet-law/announced-measures.csv): machine-readable copy of the three tables. ## Browser tools, nothing to install - [100 Australian accounting questions](https://duguid.com.au/tools/accounting-questions/): practical steps, record checklists, official guidance and existing resources for tax, bookkeeping, cash flow, NSW and Newcastle topics. Search and download selected checklists. Question numbers do not represent measured search demand. - [Tax returns questions](https://duguid.com.au/tools/accounting-questions/general-tax/): ten of the 100 questions, with steps, records, official guidance and a checklist download. Use the income year and residency facts for the return being prepared. - [Deductions questions](https://duguid.com.au/tools/accounting-questions/deductions/): ten of the 100 questions, with steps, records, official guidance and a checklist download. Check eligibility and record requirements for the income year of the expense. - [Starting a business questions](https://duguid.com.au/tools/accounting-questions/business-setup/): ten of the 100 questions, with steps, records, official guidance and a checklist download. Use the entity, activity and income year being assessed. - [GST and BAS questions](https://duguid.com.au/tools/accounting-questions/gst-bas/): ten of the 100 questions, with steps, records, official guidance and a checklist download. Use the BAS period, GST accounting basis and account due date being reviewed. - [Payroll and super questions](https://duguid.com.au/tools/accounting-questions/payroll-super/): ten of the 100 questions, with steps, records, official guidance and a checklist download. Use the pay date and applicable payroll rules. Super questions distinguish the regime from July 2026. - [Bookkeeping and close questions](https://duguid.com.au/tools/accounting-questions/bookkeeping-close/): ten of the 100 questions, with steps, records, official guidance and a checklist download. Use the same reporting date and accounting basis for all reconciliations. - [Cash flow questions](https://duguid.com.au/tools/accounting-questions/cash-flow/): ten of the 100 questions, with steps, records, official guidance and a checklist download. Planning method for the dates entered. Include obligations in their expected payment weeks. - [Management reporting questions](https://duguid.com.au/tools/accounting-questions/management-reporting/): ten of the 100 questions, with steps, records, official guidance and a checklist download. Compare the same reporting period and basis; historical benchmarks retain their published years. - [Companies and trusts questions](https://duguid.com.au/tools/accounting-questions/company-compliance/): ten of the 100 questions, with steps, records, official guidance and a checklist download. Use the entity and relevant income or FBT year; linked tools have separate supported periods. - [Investments and NSW questions](https://duguid.com.au/tools/accounting-questions/investments-local/): ten of the 100 questions, with steps, records, official guidance and a checklist download. Use the relevant disposal, income or NSW assessment year. - [Business calculators](https://duguid.com.au/tools/business-calculators/): browser calculations for GST, business use, margins, break-even, hourly pricing, budget variance, fixed monthly loans, supplied staff costs and 13-week cash scenarios with CSV export. Planning estimates with visible assumptions; no account access or lodgement. - [GST calculator](https://duguid.com.au/tools/business-calculators/gst/): Work out GST, the GST-exclusive amount and the GST-inclusive amount for a wholly taxable supply at 10%, rounded once to cents. - [Business use share calculator](https://duguid.com.au/tools/business-calculators/business-use/): Apportion an eligible cost by a supported business use percentage. It does not decide deductibility, depreciation or record sufficiency. - [Margin and markup calculator](https://duguid.com.au/tools/business-calculators/margin/): Gross profit, margin and markup from sales and direct cost, on a consistent GST basis and matching period. - [Break-even sales calculator](https://duguid.com.au/tools/business-calculators/break-even/): Whole units and sales required to cover fixed costs from price and variable cost per unit. - [Hourly pricing calculator](https://duguid.com.au/tools/business-calculators/hourly/): Required hourly rate before GST from annual costs, target profit and billable hours. - [Budget variance calculator](https://duguid.com.au/tools/business-calculators/variance/): Actual minus budget, the percentage of absolute budget and whether the difference is favourable or unfavourable. - [Monthly loan payment calculator](https://duguid.com.au/tools/business-calculators/loan/): Fixed monthly payment, first-payment interest and principal, and estimated total interest, with no fees or balloon. - [Staff cost calculator](https://duguid.com.au/tools/business-calculators/staff/): Annual and monthly cost of a staff member from wages, the supplied super amount and other annual costs. - [13-week cash forecast](https://duguid.com.au/tools/business-calculators/cash/): Weekly closing cash from opening cash, receipts and payments, with one delayed receipt and a funding gap against a buffer. Save, load and export as CSV. - [Payday Super receipt evidence example](https://duguid.com.au/tools/payday-super/): fixed synthetic $120 contribution, timely remittance and no recorded fund receipt. The pinned 0.1.3 engine returns AT_RISK with a 17 August 2026 deadline. No installation, uploads or recalculation; source and full evaluation links are on the page. - [Tools](https://duguid.com.au/tools/): index of 12 open source accounting controls grouped by extract, calculate, control and inspect, with delivery types, source repositories and human review boundaries. - [Coal LSL levy calculator](https://duguid.com.au/tools/coal-lsl-levy/): answers which wages are eligible for the 2.7% payroll levy under section 3B of the *Coal Mining Industry (Long Service Leave) Payroll Levy Collection Act 1992*, across the base rate, annual salary and casual branches. Explains the questions this calculator does not resolve and the statutory rules relevant to them. ## Tool guides, open source, install and run locally - [Ozzit Excel LAMBDA library](https://duguid.com.au/tools/ozzit/): an Excel workbook of 133 native LAMBDA functions and 5 help tables for Australian financial modelling, covering GST at 10%, 1 July financial year labels, modelling depreciation schedules, amortisation, ratios and AASB 16 lessee schedules. Current release v3.4.2, published 20 September 2026. Needs Microsoft 365 or Excel 2024 or later; LibreOffice and older Excel cannot evaluate the functions. MIT licensed. It calculates only: the reviewer decides the accounting treatment, and it contains no income tax, Medicare levy or Division 7A calculations. - [Monthly Close Controls](https://duguid.com.au/tools/monthly-close-controls/): compares current and prior Xero-shaped trial balance CSVs and prepares an exception report for human review. The pinned fictional example returns REVIEW with 8 exceptions and 6 draft client queries. It reads local files and cannot approve a close. - [Workpaper Review Gate](https://duguid.com.au/tools/workpaper-review-gate/): local readiness gate for BAS, month-end and year-end folders. A missing artefact or unbalanced trial balance is sent back to the preparer. READY is not sign-off. - [Xero trial balance CSV export](https://duguid.com.au/tools/xero-trial-balance/): pulls the trial balance from the Xero reporting API and refuses to write a file unless the month movement and the year-to-date figures both balance. Read-only scope. - [ATO small business benchmark comparison](https://duguid.com.au/tools/ato-benchmarks/): maps a profit and loss to the ATO benchmark categories and shows whether each ratio falls inside the published range. Runs offline with no network call. - [Construction WIP schedule](https://duguid.com.au/tools/wip-schedule/): deterministic AASB 15 cost-to-cost WIP from a contract CSV. Contract assets and liabilities are per contract and never netted. Review aid, not a determination. - [Subcontract ledger skills for construction and mining](https://duguid.com.au/tools/subcontractor-ledgers/): agent skills for progress claims, retentions, work in progress under AASB 15, fuel tax credits, the Coal LSL levy and payroll tax on contractors. Needs an AI coding agent to run. The skills assemble the contract CSV; TheWIPTally computes the schedule. - [Section 100A and Division 6 trust distributions](https://duguid.com.au/tools/trust-distributions/): classifies a distribution against the PCG 2022/2 zones, which are white, green and red only, works out proportionate Division 6 shares following Bamford and calculates a section 99B amount. - [Company tax rate and franking account](https://duguid.com.au/tools/company-tax-franking/): base rate entity test, franking account ledger, franking deficit tax and the Division 203 benchmark rule. ## Refusals - [What these tools refuse](https://duguid.com.au/tools/refusals/): each send-back and refusal the tools give, with the exact command output and exit code from fictional fixtures at the released versions where a command exists, the human step that follows and the refusal scenarios quoted from the external llm-tax-guardrails (DrDebits) guide on GitHub, which is not one of the site's tools. ## Known limitations - [Payday Super receipt amount rules](https://duguid.com.au/tools/payday-super/#receipt-amount): published checkers 0.1.7 and 0.1.8 leave a timely fund receipt date without an amount UNKNOWN. A late receipt without an amount remains LATE, with no shortfall reduction and an estimate measured to the as-at date. The guide's reference MCP v0.2.8 pins checker 0.1.7. Older checkers 0.1.5 and 0.1.6 assume full receipt when the amount is missing; 0.1.6 discloses that assumption, and the quick trial uses 0.1.9. MCP 0.2.4 pins checker 0.1.6 and retains the older behaviour. A refusal is a question handed back. A limitation is an answer that rests on something the reader should be told. Each entry below is declared at runtime by the tool that carries it, and is bound to that behaviour by a test in its package. The full register is at [Known limitations](https://duguid.com.au/tools/limitations/), with a `LIMITATIONS.md` in each package. An absent entry means nothing has been established and recorded, not that a tool is correct everywhere else. - [PSC-1, payday-super-checker/v0.1.4, narrowed in v0.1.6](https://duguid.com.au/tools/limitations/#psc-1): where a notional earnings period runs past the last quarter in the general interest charge table, a default run withholds that row's SG charge exposure and says so; `--allow-stale-gic` carries the last known rate forward instead. Verdicts, deadlines, business-day arithmetic and the SG shortfall never read the rate table. The MCP server has no such option. Update the rate table from the ATO general interest charge rates page rather than passing the flag. - [PSC-2, payday-super-checker/v0.1.4](https://duguid.com.au/tools/limitations/#psc-2): 4 column conditions (a blank employee id, no payroll pay-period-end column, only one super pay period column, or no super pay period columns) degrade the payroll-to-super join, so a verdict can be wrong with no arithmetic being wrong. Each is declared as a structural warning. In 0.1.4 those warnings are console-only; from 0.1.5 (20 September 2026) they are also written to the contributions CSV, the report and the evidence pack. - [ABC-1, ato-benchmark-compare/v0.1.7](https://duguid.com.au/tools/limitations/#abc-1): a ratio whose buckets were not supplied is shown as a computed figure, typically 0.0000, by the command line text and JSON, while the Python library withholds it as not_supplied, and the cost of sales key ratio fallback differs between them. Release 0.1.8 (20 September 2026) gates the command line on the supplied buckets, so both paths read not_supplied. ## Supported installation - [Adopt](https://duguid.com.au/tools/australian-tax-ai-agents/#install): the maintained source for the supported installation routes and the no-install option. - [github-agent-skills](https://github.com/ryanduguid/github-agent-skills): github-agent-skills gives Codex and Claude Code the GitHub maintenance workflows this portfolio uses, and keeps the fictional-data and human review boundaries. Use the maintained setup at Adopt. ## Contact and history - [Contact](https://duguid.com.au/contact/): project and identity links. This site is not a practice and does not accept professional engagements. - [Changelog](https://duguid.com.au/changelog/): dated register of site changes and tagged tool releases. - [Atom feed](https://duguid.com.au/feed.xml): the changelog rows as a feed for freshness monitors. ## Source code - [Australian Accounting](https://github.com/ryanduguid/australian-accounting): maintained home for the local MCP application and the independently versioned Australian accounting engines. - [Accounting Review Pipeline](https://github.com/ryanduguid/accounting-review-pipeline): maintained home for Xero exports, readiness and close-review controls, the Excel toolkit and the Power BI project. Each component keeps its own distribution, commands and licence. - [Australian Accounting Skills](https://github.com/ryanduguid/australian-accounting-skills): release v0.3.1 contains 65 workflows, including 9 public practice and 10 construction and mining subcontractor workflows. Of its 76 validation cards, 72 have confirmed results from a whole-card model run, which measures adherence to visible instructions, not source retrieval; the four core failure cards it adds have no recorded live verdict. Use Adopt for installation. The contracting workflows are included in this unified pack. - [llm-tax-guardrails](https://github.com/ryanduguid/llm-tax-guardrails): external guide repository, not in the site tool register and with no page on this site. It holds the DrDebits prompt guide, APES 110 and TPB guardrails, refusal scenarios and recorded model evaluations. An authorised human remains responsible for professional judgements and actions. - [github.com/ryanduguid](https://github.com/ryanduguid): every tool on this site, plus the MCP server, the Claude Code skills, the Excel LAMBDA library and the Power Query utilities. - [Related resources](https://duguid.com.au/tools/#related-resources): third-party libraries, ATO guidance and Commonwealth legislation sources this work depends on or sits beside. ## Optional - [Crawler policy](https://duguid.com.au/robots.txt): search and user-requested citation fetches remain allowed, including Google-Extended. Common Crawl (CCBot), Bytespider, GPTBot, ClaudeBot and Applebot-Extended may crawl for training. Amazonbot, cohere-ai, Diffbot, FacebookBot and meta-externalagent remain blocked. Permission does not guarantee a crawl, dataset inclusion or use by a model. - [Australian tax legislation corpus](https://github.com/ryanduguid/au-tax-legislation-corpus): Commonwealth tax legislation prepared for retrieval. - [Release policy](https://github.com/ryanduguid/release-policy): the shared release workflow every repository above uses. - [Full text of every page](https://duguid.com.au/llms-full.txt): every indexable page as plain text in sitemap order, built from the visible page content for one-fetch reading. ## About Written by Ryan Duguid in his own time and on his own equipment. Ryan Duguid is a Provisional CA ANZ Member. CA ANZ has not endorsed this site or its tools. Source repositories: [github.com/ryanduguid](https://github.com/ryanduguid).